:root {
    /*--clr-blue      : #256AAF;*/
    /*--clr-lightblue : #3FAFEF;*/
}

/* Font Classes
   ==================== */

@font-face {
    font-family  : 'Manrope Regular';
    src          : url('../../fonts/Manrope Regular.ttf');
    font-display : swap;
}

@font-face {
    font-family  : 'Manrope Bold';
    src          : url('../../fonts/Manrope Bold.ttf');
    font-display : swap;
}

/* Global Classes
   ==================== */

* {
    font-family : 'Manrope Regular', sans-serif;
    font-size   : 16px;
    line-height : 20px;
    box-sizing  : border-box;
    margin      : 0;
    padding     : 0;
}

ol, ul {
    list-style : none;
    color      : inherit;
}

li, a, i, span {
    font-size       : inherit;
    display         : inline-block;
    text-decoration : none;
    color           : inherit;
}

a, i {
    cursor : pointer;
}

img {
    display   : block;
    max-width : 100%;
    /*image-rendering        : -moz-crisp-edges;          !* Firefox *!*/
    /*image-rendering        : -o-crisp-edges;            !* Opera *!*/
    /*image-rendering        : -webkit-optimize-contrast; !* Webkit (non-standard naming) *!*/
    /*image-rendering        : crisp-edges;*/
    /*-ms-interpolation-mode : nearest-neighbor;          !* IE (non-standard property) *!*/
}

label, input {
    display : block;
    width   : 100%;
}

button {
    cursor : pointer;
}

mark {
    color            : inherit;
    background-color : transparent;
}

html {
    height : 100%;
    /*scroll-behavior : smooth;*/
}

body {
    display        : flex;
    flex-direction : column;
    height         : 100%;
    min-height     : 100vh;
}

main {
    display   : block;
    flex-grow : 1;
}

/* Typography Classes
   ==================== */

h1 {
    font-family : 'Manrope Bold', sans-serif;
    font-size   : 32px;
    line-height : 36px;
}

h2 {
    font-family : 'Manrope Bold', sans-serif;
    font-size   : 28px;
    line-height : 32px;
}

h3 {
    font-family : 'Manrope Bold', sans-serif;
    font-size   : 24px;
    line-height : 28px;
}

.tg-subtitle {
    font-size   : 20px;
    line-height : 22px;
}

.tg-paragraph {
    font-size   : 16px;
    line-height : 22px;
}

.tg-body {
    font-size   : 18px;
    line-height : 20px;
}

.tg-body-bold {
    font-family : 'Manrope Bold', sans-serif;
    font-size   : 18px;
    line-height : 20px;
}

.tg-button-big {
    font-size   : 22px;
    line-height : 28px;
}

.tg-button-small {
    font-size   : 16px;
    line-height : 16px;
}

.tg-caption {
    font-size   : 14px;
    line-height : 16px;
}

.tg-helper {
    font-family : 'Manrope Bold', sans-serif;
    font-size   : 12px;
    line-height : 16px;
}

/* Main Header Classes
   ==================== */

header {
    background-color : #424242;
}

.header {
    display       : -ms-grid;
    display       : grid;
    -ms-grid-rows  : -webkit-max-content -webkit-max-content;
    -ms-grid-rows  : max-content max-content;
    -ms-grid-columns  : -webkit-max-content 1fr;
    -ms-grid-columns  : max-content 1fr;
        grid-template : 'logo nav' -webkit-max-content
                    'search search' -webkit-max-content / -webkit-max-content 1fr;
        grid-template : 'logo nav' max-content
                    'search search' max-content / max-content 1fr;
}

.header__logo {
    -ms-grid-row     : 1;
    -ms-grid-column     : 1;
    overflow      : hidden;
    -ms-grid-row-align    : center;
        align-self    : center;
    grid-area     : logo;
    width         : 70px;
    margin        : 16px 24px;
    border-radius : 10px;
}

.header__logo img.mobile {
}

.header__logo img.desktop {
    max-width : 200px;
}

.header__search {
    -ms-grid-row        : 2;
    -ms-grid-column        : 1;
    -ms-grid-column-span        : 2;
    grid-area        : search;
    padding          : 0 5px 15px;
    background-color : #424242;
}

.header__search label {
    display         : flex;
    overflow        : hidden;
    align-items     : center;
    justify-content : space-between;
    height          : 40px;
    border-radius   : 6px;
}

.header__search label > * {
    height : 100%;
    border : none;
}

.header__search label > * + * {
    border-left : 1px solid;
}

.header__search label select {
    width         : 25%;
    min-width     : 100px;
    text-align    : center;
    color         : #db5134;
    border-radius : 0;
    font-size     : 14px;
}

.header__search label input {
    padding : 0 12px;
}

.header__search label button {
    padding          : 0 16px;
    color            : #FFFFFF;
    background-color : #db5134;
}

.header__nav {
    -ms-grid-row  : 1;
    -ms-grid-column  : 2;
    -ms-grid-row-align : center;
        align-self : center;
    grid-area  : nav;
    margin     : 16px 20px 16px 0;
    text-align : right;
    color      : #FFFFFF;
}

.header__nav li + li {
    margin-left : 4px;
}

.header__nav li.desktop {
    display : none;
}

.header i {
    width  : 14px;
    cursor : pointer;
}

.header .toggle-menu {
    position : relative;
    cursor   : pointer;
}

.header .toggle-menu__icon {
    font-size   : 30px;
    width       : 30px;
    margin-left : 0;
    text-align  : center;
}

.header .toggle-menu__title {
    display : none;
}

.header .toggle-menu i {
    margin-left : 4px;
}

.header .cart {
    cursor : pointer;
}

.header .cart i {
    font-size      : 30px;
    position       : relative;
    width          : 100%;
    -webkit-user-select    : none;
       -moz-user-select    : none;
        -ms-user-select    : none;
            user-select    : none;
    pointer-events : none;
}

.header .cart i span {
    font-size : 14px;

}

.header .cart__count {
    font-weight    : 700;
    position       : absolute;
    right          : 0;
    bottom         : 0;
    left           : 0;
    width          : 100%;
    -webkit-user-select    : none;
       -moz-user-select    : none;
        -ms-user-select    : none;
            user-select    : none;
    text-align     : center;
    pointer-events : none;
    color          : #db5134;
    border-radius  : 100%;
}

.header .menu {
    position      : absolute;
    z-index       : 1;
    right         : 0;
    display       : none;
    width         : 100px;
    margin-top    : 15px;
    margin-right  : 12px;
    margin-left   : auto;
    padding       : 10px;
    text-align    : center;
    border-radius : 11px;
    background    : #424242;
    box-shadow    : 0 0 5px 0 #eaeaea;
}

.header .auction__menu {
    width : 200px;
}

.header .menu > li {
    display : block;
    cursor  : pointer;
}

.header .menu li + li {
    margin-top  : 8px;
    margin-left : 0;
}

.header__search-icon {
    display: none;
}

/* Footer Classes
   ==================== */

.footer {
    display       : -ms-grid;
    display       : grid;
    overflow      : hidden;
    -ms-grid-rows  : -webkit-max-content 1fr;
    -ms-grid-rows  : max-content 1fr;
    -ms-grid-columns  : 50% 50%;
        grid-template : 'info info' -webkit-max-content
                    'about links' 1fr / 50% 50%;
        grid-template : 'info info' max-content
                    'about links' 1fr / 50% 50%;
    width         : 100%;
    padding       : 24px 0;
}

.footer a:hover {
    transform  : scale(1.0225);
    transition : 0.35s;
}

.footer > * {
    padding : 10px;
}

.footer.wrapper li {
    margin-top : 20px;
}

.footer ul li + li {
    margin-top : 8px;
}

.footer__logo {
    -ms-grid-row       : 1;
    -ms-grid-column       : 1;
    display         : none;
    align-items     : flex-start;
    justify-content : center;
    grid-area       : logo;
}

.footer__info {
    -ms-grid-row       : 1;
    -ms-grid-column       : 1;
    -ms-grid-column-span       : 2;
    display         : flex;
    align-items     : center;
    flex-direction  : column;
    justify-content : center;
    grid-area       : info;
    text-align      : center;
}

.footer__info a {
    color : #666;
}

.footer__about {
    -ms-grid-row      : 2;
    -ms-grid-column      : 1;
    display        : flex;
    align-items    : flex-end;
    flex-direction : column;
    grid-area      : about;
    text-align     : right;
}

.footer__links {
    -ms-grid-row      : 2;
    -ms-grid-column      : 2;
    display        : flex;
    align-items    : flex-start;
    flex-direction : column;
    grid-area      : links;
    text-align     : left;
}

.footer__about .title,
.footer__links .title {
    color : #666;
}

.footer.wrapper .footer__links li {
    margin-top: 8px;
}

.footer__links li:nth-child(5) {
    color       : #db5134;
}

.footer__links li:nth-child(6) {
    font-weight : 700;
    color       : #db5134;
}

.footer__links li:nth-child(7) {
    font-weight : 700;
    color       : #db5134;
}

.footer__copyright {
    grid-area        : copyright;
    width            : 100%;
    padding-top      : 16px;
    padding-bottom   : 16px;
    text-align       : center;
    color            : #FFFFFF;
    background-color : #db5134;
}

.footer__copyright.footer__powered-by {
    padding-left: 50px;
    text-align: left;
    background-color: #eaeaea;
    color: #424242;
}

/* Dropdown Classes
   ==================== */

.dropdown {
    position         : fixed;
    z-index          : 1;
    top              : 0;
    bottom           : 0;
    left             : 0;
    display          : flex;
    overflow         : hidden;
    align-items      : flex-start;
    flex-direction   : column;
    width            : 0;
    height           : 100%;
    transition       : opacity 250ms linear;
    opacity          : 0;
    color            : #FFFFFF;
    background-color : #424242;
    box-shadow       : 5px 0 20px 0 #eaeaea;
}

.dropdown__logo {
    width         : 140px;
}

.dropdown ul {
    display         : flex;
    align-items     : flex-start;
    flex-direction  : column;
    justify-content : center;
    width           : 100%;
    margin-top      : 16px;
    font-size       : 20px;
}

.dropdown ul li + li {
    margin-top : 15px;
}

/* Hero Section Classes
   ==================== */

.hero {
    position        : relative;
    display         : flex;
    align-items     : center;
    flex-direction  : column;
    justify-content : center;
    min-height      : 400px;
    padding         : 20px;
}

.hero::before {
    position            : absolute;
    z-index             : -1;
    top                 : 0;
    left                : 0;
    width               : 100%;
    height              : 100%;
    content             : '';
    background-repeat   : no-repeat;
    background-position : top;
    background-size     : cover;

}

.hero > * {
    text-align : center;
}

.hero > * + * {
    margin-top : 24px;
}

.hero__title {
    letter-spacing : 3px;
    text-transform : uppercase;
    color          : #424242;
}

.hero__paragraph {
    color : #FFFFFF;
}

/* Newsletter Form Classes
   ==================== */

.newsletter {
    padding    : 16px 0;
    background : linear-gradient(#eaeaea 50%, transparent 50%);
}

.newsletter form {
    position     : relative;
    overflow     : hidden;
    margin-right : auto;
    margin-left  : auto;
    border       : 5px solid #424242;
    background   : #FFFFFF;
}

.newsletter form.primary {
    background-color: #424242;
}

.newsletter form > *:not([type='hidden']) + *:not([type='hidden']) {
    margin-top : 16px;
}

.newsletter form h3 {
    text-transform : uppercase;
    color          : #FFFFFF;
}

.newsletter form p {
    color : #eaeaea;
}

.btn-newsletter {
    /*border    : 2px solid var(--clr-lightblue) !important;*/
    -webkit-animation : pulse 2s infinite;
            animation : pulse 2s infinite;
    color: #424242 !important;
}

/* Contact Form Classes
   ==================== */

.contact {
    padding    : 32px 0;
    background : linear-gradient(transparent 50%, #eaeaea 50%);
}

.contact form.primary {
    position        : relative;
    overflow        : hidden;
    flex-direction  : row;
    flex-wrap       : wrap;
    justify-content : space-between;
    margin-right    : auto;
    margin-left     : auto;
    background      : #FFFFFF;
    box-shadow      : 0 0 10px 0 lightgrey;
}

.contact form > *:not([type='hidden']) + *:not([type='hidden']) {
    margin-top : 24px;
}

.contact form label + label {
    margin-top : 24px;
}

.contact form label[for=first_name],
.contact form label[for=last_name] {
    width : 48%;
}

.contact form h3 {
    width          : 100%;
    text-transform : uppercase;
    color          : #424242;
}

.contact form p {
    width       : 100%;
    color       : #000000;
    font-weight : 600;

}

.contact form .g-recaptcha {
    display         : flex;
    align-items     : center;
    justify-content : center;
    width           : 100%;
}

/* Regular Form Classes
   ==================== */

form.primary {
    display          : flex;
    align-items      : center;
    flex-direction   : column;
    justify-content  : center;
    width            : 100%;
    max-width        : 700px;
    height           : 100%;
    padding          : 8px 16px;
    text-align       : center;
    background-color : #FFFFFF;
}

form.primary img {
    width        : 100%;
    max-width    : 400px;
    margin-right : auto;
    margin-left  : auto;
}

form.primary h1 {
    margin-top    : 24px;
    margin-bottom : 24px;
    color         : #424242;
}

form.primary label {
    position   : relative;
    text-align : left;
    color      : #A2A2A2;
}

form.primary label[for=terms] {
    text-align : center;
    color      : #A2A2A2;
}

form.primary input:not(:-moz-placeholder-shown) + span {
    top : -18px;
}

form.primary input:not(:-ms-input-placeholder) + span {
    top : -18px;
}

form.primary label:focus-within span,
form.primary input:not(:placeholder-shown) + span {
    top : -18px;
}

form.primary label + label {
    margin-top : 24px;
}

form.primary label span {
    position   : absolute;
    top        : 9px;
    transition : all 250ms linear;
    color: #A2A2A2;
}

form.primary label div {
    color: #A2A2A2;
}

#profile form.primary label span {
    top        : -18px;
}

form.primary input[type=checkbox] {
    display      : inline-block;
    width        : auto;
    height       : auto;
    margin-right : 8px;
}

form.primary input:focus {
    transition    : border-bottom-color 250ms linear;
    border-bottom : 2px solid #eaeaea;
    outline       : none;
}

form.primary textarea:focus {
    transition : border-bottom-color 250ms linear;
    border     : 2px solid #eaeaea;
    outline    : none;
}

form.primary button {
    display : block;
    width   : 200px;
    margin  : 24px auto;
}

form.primary textarea::-moz-placeholder {
    color: #A2A2A2;
}

form.primary textarea:-ms-input-placeholder {
    color: #A2A2A2;
}

form.primary textarea::placeholder {
    color: #A2A2A2;
}

form.primary textarea:-ms-input-placeholder {
    color: #A2A2A2;
}

form.primary textarea::-ms-input-placeholder {
    color: #A2A2A2;
}

/* Input Classes
   ==================== */

input {
    height        : 40px;
    color         : #424242;
    border        : none;
    border-bottom : 2px solid #A2A2A2;
}

input[readonly] {
    outline : none;
}

input[readonly]:focus {
    border-bottom : 2px solid #eaeaea;
}

textarea {
    width         : 100%;
    padding       : 10px;
    resize        : none;
    color         : #424242;
    border        : 2px solid #A2A2A2;
    border-radius : 8px;
}

textarea::-moz-placeholder {
    color : #eaeaea;
}

textarea:-ms-input-placeholder {
    color : #eaeaea;
}

textarea::placeholder {
    color : #eaeaea;
}

textarea:focus {
    border     : 2px solid #eaeaea;
    outline    : none;
    box-shadow : 0 0 10px #eaeaea;
}

select {
    width         : 100%;
    height        : 40px;
    color         : #424242;
    border        : 2px solid #A2A2A2;
    border-radius : 8px;
}

input:disabled {
    color: rgba(0,0,0,0.5);
    background-image: url('../images/disabled.png');
    background-size: contain;
    background-repeat: repeat-x;
}

/* Button Classes
   ==================== */

.btn {
    line-height   : 1;
    display       : inline-block;
    width         : -webkit-max-content;
    width         : -moz-max-content;
    width         : max-content;
    padding       : 12px 24px;
    cursor        : pointer;
    text-align    : center;
    border        : none;
    border-radius : 7px;
}

.btn:focus {
    outline    : none;
    box-shadow : 0 0 10px 0 currentColor;
}

.btn-black {
    color            : #FFFFFF;
    background-color : #000000;
    box-shadow       : inset 0 0 0 2px #000000;
}

.btn-black:hover {
    color            : #000000;
    background-color : #FFFFFF;
}

.btn-white {
    color            : #000000;
    background-color : #FFFFFF;
    box-shadow       : inset 0 0 0 2px #000000;
}

.btn-white:hover {
    color            : #FFFFFF;
    background-color : #000000;
}

.btn-grey {
    color            : #000000;
    background-color : #FFFFFF;
    box-shadow       : inset 0 0 0 2px #A2A2A2;
}

.btn-grey:hover {
    color            : #000000;
    background-color : #A2A2A2;
}

.btn-unavailable:hover {
    color            : inherit;
    background-color : inherit;
    cursor           : inherit;
}

.btn-blue {
    color            : #FFFFFF;
    background-color : #424242;
    box-shadow       : inset 0 0 0 2px #424242;
}

.btn-blue:hover {
    color            : #eaeaea;
    background-color : #FFFFFF;
}

.btn-lightblue {
    color            : #FFFFFF;
    background-color : #A2A2A2;
    box-shadow       : inset 0 0 0 2px #A2A2A2;
}

.btn-lightblue:hover {
    color            : #A2A2A2;
    background-color : #FFFFFF;
}

.btn-lightblue-t {
    color            : #FFFFFF;
    background-color : #db5134;
    box-shadow       : inset 0 0 0 2px #db5134;
}

.btn-lightblue-t:hover {
    opacity: 0.8;
}

.btn-green {
    color            : #FFFFFF;
    background-color : #3EC55C;
    box-shadow       : inset 0 0 0 2px #3EC55C;
}

.btn-green:hover {
    color            : #3EC55C;
    background-color : #FFFFFF;
}

.btn-green-t {
    color            : #db5134;
    background-color : #FFFFFF;
    box-shadow       : inset 0 0 0 2px #db5134;
}

.btn-green-t:hover {
    color            : #FFFFFF;
    background-color : #db5134;
}

.btn-orange {
    color            : #FFFFFF;
    background-color : #db5134;
    box-shadow       : inset 0 0 0 2px #db5134;
}

.btn-orange:hover {
    color            : #db5134;
    background-color : #FFFFFF;
}

.btn-orange-t {
    color            : #db5134;
    background-color : #FFFFFF;
    box-shadow       : inset 0 0 0 2px #db5134;
}

.btn-orange-t:hover {
    color            : #FFFFFF;
    background-color : #db5134;
}

.btn-red {
    color            : #FFFFFF;
    background-color : #D62D30;
    box-shadow       : inset 0 0 0 2px #D62D30;
}

.btn-red:hover {
    color            : #D62D30;
    background-color : #FFFFFF;
}

.btn-red-t {
    color            : #D62D30;
    background-color : #FFFFFF;
    box-shadow       : inset 0 0 0 2px #D62D30;
}

.btn-red-t:hover {
    color            : #FFFFFF;
    background-color : #D62D30;
}

.btn-disabled {
    -webkit-user-select    : none;
       -moz-user-select    : none;
        -ms-user-select    : none;
            user-select    : none;
    /*background-color : var(--clr-grey);*/
    pointer-events : none;
    color          : #A2A2A2;
    box-shadow     : inset 0 0 0 2px #A2A2A2;
}

/* Product Slide Classes
   ==================== */

.product-slide {
    min-height : 510px;
    margin     : 16px;
    padding    : 16px;
    cursor     : move;
}

.product-slide > * {
    display    : block;
    width      : 100%;
    text-align : center;
}

.product-slide > * + * {
    margin-top : 16px;
}

.product-slide__image {
    display         : flex;
    align-items     : center;
    justify-content : center;
    height          : 150px;
    -webkit-user-select     : none;
       -moz-user-select     : none;
        -ms-user-select     : none;
            user-select     : none;
}

.product-slide__name {
    -webkit-user-select : none;
       -moz-user-select : none;
        -ms-user-select : none;
            user-select : none;
    color       : #424242;
}

.product-slide__description {
    flex-grow   : 1;
    -webkit-user-select : none;
       -moz-user-select : none;
        -ms-user-select : none;
            user-select : none;
    color       : #A2A2A2;
}

.product-slide__info {
    font-size   : 14px;
    -webkit-user-select : none;
       -moz-user-select : none;
        -ms-user-select : none;
            user-select : none;
    color       : #eaeaea;
}

.product-slide__price {
    font-size   : 40px;
    font-weight : 700;
    line-height : 44px;
    -webkit-user-select : none;
       -moz-user-select : none;
        -ms-user-select : none;
            user-select : none;
    color       : #db5134;
}

#products .product-slide {
    min-height : 500px;
}

#products .product-slide__name {
    font-size : 20px;
}

#products .product-slide__description {
    font-size : 12px;
}

#products .product-slide__info {
    font-size : 10px;
}

#products .product-slide__price {
    font-size   : 40px;
    line-height : 44px;
}

#products .btn {
    font-size   : 16px;
    line-height : 16px;
}

/* Vendor Slide Classes
   ==================== */

.category-slide {
    height          : -webkit-fit-content;
    height          : -moz-fit-content;
    height          : fit-content;
    position        : relative;
    align-items     : center;
    justify-content : center;
    margin          : 16px;
    cursor          : move;
    /*border          : 1px solid #ABABAB;*/
}

.category-slide__image {
    overflow      : hidden;
    opacity       : 0.65;
}

.category-slide__title {
    position        : absolute;
    letter-spacing  : 3px;
    color           : #db5134;
    font-size       : 25px;
    text-shadow     :
    1px 1px 0 #000,
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.category-slide a {
    position         : absolute;
    bottom           : 25px;
    padding          : 16px;
    color            : #FFFFFF;
    border-radius    : 8px;
    background-color : #db5134;
    box-shadow       : 0 0 5px 0 lightgray;
}

/* Shop Section Classes
   ==================== */

.shop {
    display   : flex;
    flex-wrap : wrap;
}

.shop__filters {
    display : flex;
    width   : 100%;
}

.shop__filters label[for*='search'] {
    margin-bottom : 8px;
    padding       : 5px;
}

.shop__filters label[for*='search'] input {
    padding       : 0 5px;
    border-radius : 8px;
}

.shop__filters .category input {
    border : 2px solid #db5134;
}

.shop__filters .vendor input {
    border : 2px solid #db5134;
}

.shop__filters .category,
.shop__filters .vendor {
    width   : 50%;
    padding : 10px;
}

.shop__filters .category__list,
.shop__filters .vendor__list {
    overflow-y : scroll;
    height     : 200px;
}

.shop__filters .title {
    font-size     : 20px;
    overflow      : hidden;
    width         : 100%;
    margin-bottom : 8px;
    white-space   : nowrap;
    text-overflow : ellipsis;
    border-bottom : 2px solid
}

.shop__filters .category .title {
    color : #db5134;
}

.shop__filters .vendor .title {
    color : #db5134;
}

.shop__filters .category li {
    position : relative;
    display  : block;
    width    : 100%;
    padding-left: 20px;
    color: #000000;
    font-weight: 400;
}

.shop__filters .category li.is-main {
    color: #db5134;
    font-weight: 700;
}

.shop__filters .category li a {
    display        : inline-block;
    overflow       : hidden;
    width          : auto;
    vertical-align : middle;
    white-space    : nowrap;
    text-overflow  : ellipsis;
}

.shop__filters .category li ul.is-collapsed {
    height: 0;
    transition: height 0.3s linear;
}

.shop__filters .category li .toggle-categories-btn {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 100%;
    background: none;
    border: none;
    font-size: 18px;
    font-weight: 700;
    margin: 0;
    overflow: hidden;
    padding: 4px;
}

.shop__filters .category li .toggle-categories-btn span.horizontal {
    display: block;
    background-color: #db5134;
    position: absolute;
}

.shop__filters .category li .toggle-categories-btn span.vertical {
    display: block;
    background-color: #db5134;
    position: absolute;
}

.shop__filters .category li .toggle-categories-btn span.horizontal {
    width: 12px;
    height: 2px;
    margin: auto;
    top: 11px;
    transition: none;
}

.shop__filters .category li .toggle-categories-btn span.vertical {
    width: 2px;
    left: 9px;
    height: 100%;
    top: 20px;
    transition: all 0.3s ease-in;
}

.shop__filters .category li .toggle-categories-btn.is-collapsed span.vertical {
    top: 6px;
    height: 12px;
    transition: all 0.1s ease-in;
}

.shop__filters .vendor__list label {
    display         : flex;
    align-items     : center;
    flex-direction  : row-reverse;
    justify-content : space-between;
    padding-right   : 10px;
}

.shop__filters .vendor__list input {
    width  : 15px;
    height : 15px;
}

.shop__filters .vendor__list span {
    overflow      : hidden;
    width         : 80%;
    white-space   : nowrap;
    text-overflow : ellipsis;
}

.shop__filters li ul {
    overflow    : auto;
    height      : auto;
    margin-left : 0;
}

.shop__filters .main__list {
    overflow       : hidden;
    margin-left    : 5px;
    padding-bottom : 5px;
    padding-left   : 15px;
    color          : #db5134;
    /*border-bottom  : 3px solid var(--clr-green);*/
    /*border-left    : 3px solid var(--clr-green);*/
}

.shop__filters .sub__list {
    /* border-bottom : 2px solid var(--clr-green); */
    /* border-left   : 2px solid var(--clr-green); */
}

.shop__filters .sub__list ul {
    padding-bottom : 5px;
}

.shop__filters .sub__list ul + ul {
    padding-top : 5px;
}

.shop__filters .child__list {
}

.shop__filters .grandchild__list {
    margin-left   : 10px;
    padding-left  : 10px;
    border-bottom : 1px solid;
    border-left   : 1px solid #db5134;
}

.shop__filters .vendor-selection:hover {
    transition       : 0.15s;
    background-color : #EBEBEB;
}

.shop__products {
    display        : flex;
    flex-direction : column;
    width          : 100%;
}

.shop__products__header {
    padding       : 20px 0;
    text-align    : center;
    border-top    : 2px solid #A2A2A2;
    border-bottom : 2px solid #A2A2A2;
}

.shop__products__header span {
    font-size   : 20px;
    font-weight : 700;
}

.shop__products__content {
    display         : flex;
    flex-wrap       : wrap;
}

.shop__products__footer {
    padding       : 10px;
    text-align    : right;
    border-bottom : 2px solid #A2A2A2;
    margin-top    : 3vh;
}

.shop__products__footer button {
    font-size        : 20px;
    font-weight      : 700;
    cursor           : pointer;
    color            : #424242;
    border           : none;
    background-color : transparent;
}

/* Shop Card Classes
   ==================== */

.product-card {
    display       : -ms-grid;
    display       : grid;
    -ms-grid-rows  : 1fr 1fr -webkit-max-content;
    -ms-grid-rows  : 1fr 1fr max-content;
    -ms-grid-columns  : 125px 1fr;
        grid-template : 'image name' 1fr
                    'image vendor' 1fr
                    'image button' -webkit-max-content / 125px 1fr;
        grid-template : 'image name' 1fr
                    'image vendor' 1fr
                    'image button' max-content / 125px 1fr;
    width         : 100%;
    max-width     : 300px;
    margin        : 10px auto;
    padding       : 40px;
    border        : 1px solid rgba(211, 211, 211, 0.25);
    border-radius : 11px;
    box-shadow    : 0 0 10px 0 lightgrey;
}

.product-card:hover {
    box-shadow : 0 0 15px 0 #AFAFAF;
}

.product-unavailable {
    border : 1px solid rgba(229, 63, 55, 0.45);
}

.product-card > * {
    display    : block;
    width      : 100%;
    min-width  : 0;
    text-align : center;
}

.product-card > * + * {
    margin-top : 24px;
}

.product-card__image {
    -ms-grid-row : 1;
    -ms-grid-row-span : 3;
    -ms-grid-column : 1;
    grid-area : image;
    width     : 125px;
}

.product > .product-card__image {
    -ms-grid-row : 1;
    -ms-grid-row-span : 1;
    -ms-grid-column : 1;
}

.cart-item > .product-card__image {
    -ms-grid-row : 1;
    -ms-grid-row-span : 2;
    -ms-grid-column : 1;
}

.product-card__image a {
    display         : flex;
    overflow        : hidden;
    align-items     : center;
    justify-content : center;
    width           : auto;
    height          : 100%;
}

.product-card__name {
    -ms-grid-row     : 1;
    -ms-grid-column     : 2;
    font-size     : 18px;
    overflow      : hidden;
    flex-grow     : 1;
    grid-area     : name;
    color         : #424242;
    border-bottom : 2px solid #424242;
}

.product > .product-card__name {
    -ms-grid-row     : 2;
    -ms-grid-column     : 1;
}

.part > .product-card__name {
    -ms-grid-row     : 1;
    -ms-grid-column     : 2;
    -ms-grid-column-span     : 3;
}

.cart-item > .product-card__name {
    -ms-grid-row     : 1;
    -ms-grid-column     : 2;
    -ms-grid-column-span     : 2;
}

.without-image > .product-card__name {
    -ms-grid-row     : 1;
    -ms-grid-column     : 1;
    -ms-grid-column-span     : 2;
}

.product-card__name a {
    overflow      : hidden;
    width         : 100%;
    white-space   : nowrap;
    text-overflow : ellipsis;
}

.product-card__vendor {
    -ms-grid-row : 2;
    -ms-grid-column : 2;
    font-size : 12px;
    grid-area : vendor;
}

.product > .product-card__vendor {
    -ms-grid-row : 3;
    -ms-grid-column : 1;
}

.product-card__vendor span {
    display       : block;
    overflow      : hidden;
    width         : 100%;
    white-space   : nowrap;
    text-overflow : ellipsis;
    color         : #424242;
}

.product-card__button {
    -ms-grid-row   : 3;
    -ms-grid-column   : 2;
    font-size   : 16px;
    line-height : 16px;
    grid-area   : button;
}

/* Product Preview Classes
   ==================== */

.product__controls {
    display         : flex;
    justify-content : space-between;
    padding         : 16px;
    text-align      : right;
    border-bottom   : 2px solid #A2A2A2;
}

.product {
    display       : -ms-grid;
    display       : grid;
    -ms-grid-rows  : -webkit-max-content -webkit-max-content -webkit-max-content -webkit-max-content -webkit-max-content;
    -ms-grid-rows  : max-content max-content max-content max-content max-content;
    -ms-grid-columns  : 1fr;
        grid-template : 'image' -webkit-max-content
                    'name' -webkit-max-content
                    'vendor' -webkit-max-content
                    'category' -webkit-max-content
                    'description' -webkit-max-content / 1fr;
        grid-template : 'image' max-content
                    'name' max-content
                    'vendor' max-content
                    'category' max-content
                    'description' max-content / 1fr;
    padding       : 16px;
}

.product > * + * {
    margin-top : 8px;
}

.product__image {
    -ms-grid-row       : 1;
    -ms-grid-row-span       : 3;
    -ms-grid-column       : 1;
    display         : flex;
    align-items     : center;
    flex-direction  : column;
    flex-wrap       : wrap;
    justify-content : center;
    grid-area       : image;
}

.product > .product__image {
    -ms-grid-row       : 1;
    -ms-grid-row-span       : 1;
    -ms-grid-column       : 1;
}

.cart-item > .product__image {
    -ms-grid-row       : 1;
    -ms-grid-row-span       : 2;
    -ms-grid-column       : 1;
}

.product__image .image {
	width: 100%;
}

.product__assets {
    display         : flex;
    flex-wrap       : wrap;
    justify-content : space-evenly;
    margin-top      : 16px;
}

.product__assets a {
    display         : flex;
    align-items     : center;
    justify-content : center;
    width           : 60px;
    height          : 60px;
    margin          : 5px;
    padding         : 10px;
    border-radius   : 11px;
    box-shadow      : 0 0 5px 0 lightgray;
}

.product__assets a + a {
    /*margin-left : 8px;*/
}

.product__assets .fa-youtube {
    color : #FF0000;
}

.product__name {
    -ms-grid-row : 1;
    -ms-grid-column : 2;
    grid-area : name;
    color     : #db5134;
}

.product > .product__name {
    -ms-grid-row : 2;
    -ms-grid-column : 1;
}

.part > .product__name {
    -ms-grid-row : 1;
    -ms-grid-column : 2;
    -ms-grid-column-span : 3;
}

.cart-item > .product__name {
    -ms-grid-row : 1;
    -ms-grid-column : 2;
    -ms-grid-column-span : 2;
}

.without-image > .product__name {
    -ms-grid-row : 1;
    -ms-grid-column : 1;
    -ms-grid-column-span : 2;
}

.vendor__name {
    -ms-grid-row : 2;
    -ms-grid-column : 2;
    grid-area : vendor;
    color     : #db5134;
}

.product > .vendor__name {
    -ms-grid-row : 3;
    -ms-grid-column : 1;
}

.product__category {
    -ms-grid-row : 4;
    -ms-grid-column : 1;
    grid-area : category;

}

.product__category a {
    color : #db5134;
}

.product__description {
    -ms-grid-row : 5;
    -ms-grid-column : 1;
    grid-area : description;
}

.product__description ul {
    margin-top  : 8px;
    margin-left : 16px;
}

.product__description ul li {
    display    : list-item;
    list-style : disc inside;
}

.product-information h2 {

}

.product-information ul li {
    display     : block;
    margin-left : 16px;
    color       : #db5134;
}

.product-deleted-admin {
    text-align : center;
    margin-top : 10%;
}

.product-deleted-admin h4 {
    margin-top : 1%;
}

/* Product Parts Preview Classes
   ==================== */

.parts {
    padding    : 20px;
    box-shadow : 0 0 10px 0 lightgray;
    position: relative;
}

.part {
    display       : -ms-grid;
    display       : grid;
    -ms-grid-rows  : -webkit-max-content -webkit-max-content;
    -ms-grid-rows  : max-content max-content;
    -ms-grid-columns  : -webkit-max-content 1fr -webkit-max-content -webkit-max-content;
    -ms-grid-columns  : max-content 1fr max-content max-content;
        grid-template : 'item name name	name' -webkit-max-content
                    'quantity price total functions' -webkit-max-content / -webkit-max-content 1fr -webkit-max-content -webkit-max-content;
        grid-template : 'item name name	name' max-content
                    'quantity price total functions' max-content / max-content 1fr max-content max-content;
    padding       : 10px 0;
    border-bottom : 1px solid #A2A2A2;
}

.part > * {
    -ms-grid-row-align : center;
        align-self : center;
}

.part__item {
    -ms-grid-row  : 1;
    -ms-grid-column  : 1;
    align-self : flex-start;
    grid-area  : item;
    margin     : 5px;
}

.part__name {
    -ms-grid-row       : 1;
    -ms-grid-column       : 2;
    grid-area       : name;
    margin          : 5px;
    display         : flex;
    justify-content : space-between;
    align-items     : flex-start;
}

.product > .part__name {
    -ms-grid-row       : 2;
    -ms-grid-column       : 1;
}

.part > .part__name {
    -ms-grid-row       : 1;
    -ms-grid-column       : 2;
    -ms-grid-column-span       : 3;
}

.cart-item > .part__name {
    -ms-grid-row       : 1;
    -ms-grid-column       : 2;
    -ms-grid-column-span       : 2;
}

.without-image > .part__name {
    -ms-grid-row       : 1;
    -ms-grid-column       : 1;
    -ms-grid-column-span       : 2;
}

.part__name span {
    width : 90%;
}

.part__quantity {
    -ms-grid-row : 2;
    -ms-grid-column : 1;
    grid-area : quantity;
    margin    : 5px;
}

.cart-item > .part__quantity {
    -ms-grid-row : 2;
    -ms-grid-column : 3;
}

.without-image > .part__quantity {
    -ms-grid-row : 2;
    -ms-grid-column : 2;
}

.part__quantity input {
    width      : 40px;
    text-align : center;
    border     : 2px solid #A2A2A2;
}

.part__price {
    -ms-grid-row : 2;
    -ms-grid-column : 2;
    grid-area : price;
    margin    : 5px;
}

.cart-item > .part__price {
    -ms-grid-row : 2;
    -ms-grid-column : 2;
}

.without-image > .part__price {
    -ms-grid-row : 2;
    -ms-grid-column : 1;
}

.part__total {
    -ms-grid-row : 2;
    -ms-grid-column : 3;
    grid-area : total;
    margin    : 5px;
}

.part__functions {
    -ms-grid-row : 2;
    -ms-grid-column : 4;
    grid-area : functions;
    margin    : 5px;
}

.part__functions button {
    padding : 10px;
}

.part__functions button span {
    display : none;
}

.part-header {
    font-weight   : 700;
    display       : none;
    -ms-grid-rows  : -webkit-max-content;
    -ms-grid-rows  : max-content;
    -ms-grid-columns  : 10% 50% 10% 10% 10% 10%;
        grid-template : 'item-header name-header price-header quantity-header total-header functions-header' -webkit-max-content / 10% 50% 10% 10% 10% 10%;
        grid-template : 'item-header name-header price-header quantity-header total-header functions-header' max-content / 10% 50% 10% 10% 10% 10%;
    padding       : 5px 0;
    border-bottom : 2px solid #A2A2A2;
}

.part__item--header {
    -ms-grid-row : 1;
    -ms-grid-column : 1;
    grid-area : item-header;
    margin    : 5px;
}

.part__name--header {
    -ms-grid-row : 1;
    -ms-grid-column : 2;
    grid-area : name-header;
    margin    : 5px;

}

.part__quantity--header {
    -ms-grid-row : 1;
    -ms-grid-column : 4;
    grid-area : quantity-header;
    margin    : 5px;

}

.part__price--header {
    -ms-grid-row : 1;
    -ms-grid-column : 3;
    grid-area : price-header;
    margin    : 5px;

}

.part__total--header {
    -ms-grid-row : 1;
    -ms-grid-column : 5;
    grid-area : total-header;
    margin    : 5px;

}

.part__functions--header {
    -ms-grid-row : 1;
    -ms-grid-column : 6;
    grid-area : functions-header;

}

.part-footer {
    display         : flex;
    align-items     : center;
    justify-content : space-between;
    padding         : 16px 0;
}

.part-footer__controls li {
    margin : 4px;
}

#part-edit:hover {
    color : #E5A02D;
}

#part-delete:hover {
    color : #DE3C3C;
}

#part-edit, #part-delete {
    transition : 0.35s;
}

.far:hover, .fas:hover {
    transform : scale(1.1);
}

/* Tooltip Container */

.tooltip {
    position : relative;
    display  : inline-block;
}

/* Tooltip Text */

.tooltip .tooltip-text {
    visibility       : hidden;
    width            : 130px;
    background-color : black;
    color            : #FFF;
    text-align       : center;
    border-radius    : 6px;
    padding          : 5px 0;
    font-size        : 12px;
    font-weight      : normal;

    /* Tooltip Text Position */
    position    : absolute;
    z-index     : 1;
    bottom      : 165%;
    left        : 50%;
    margin-left : -65px;
}

.tooltip .tooltip-text::after {
    content      : " ";
    position     : absolute;
    top          : 100%;
    left         : 50%;
    margin-left  : -5px;
    border-width : 5px;
    border-style : solid;
    border-color : black transparent transparent transparent;
}

.tooltip:hover .tooltip-text {
    visibility : visible;
}

.far:hover, .fas:hover, .tooltip:hover .tooltip-text {
    transition : 0.5s;
}

/* Box Classes
   ==================== */

.box {
    margin                  : 20px;
    padding                 : 30px 30px;
    /*border-top-left-radius  : 33px;*/
    /*border-top-right-radius : 33px;*/
    box-shadow              : 0 0 7.5px 0 lightgray;
}

.box > * + * {
    margin-top : 24px;
}

.box__image {
    display         : flex;
    align-items     : center;
    justify-content : center;
}

.box__title {
    margin-top : 32px;
}

.box__email {
    color : #424242;
	word-break: break-all;
}

.box__phone {
    color : #424242;
	word-break: break-all;
}

/* Member Box Classes
   ==================== */

.members {
    display         : flex;
    flex-wrap       : wrap;
    justify-content : center;
    margin-top      : 40px;
    margin-bottom   : 40px;
}

.member {
    display          : flex;
    align-items      : center;
    flex-direction   : column;
    width            : 80%;
    min-width        : 220px;
    max-width        : 265px;
    height           : 380px;
    margin           : 10px;
    padding          : 20px;
    text-align       : center;
    /*border-radius    : 24px;*/
    background-color : #FFFFFF;
    box-shadow       : 0 0 10px lightgrey;
}

.member:hover {
    border : 1px solid black;
}

.member:hover .member__bio {
    overflow-y : auto;
}

.member__image {
    width      : 90px;
    max-height : 90px;
}

.member__image img {
    margin : auto;
}

.member__name {
    font-size      : 16px;
    font-weight    : 700;
    margin-top     : 8px;
    text-transform : uppercase;
    color          : #424242;
}

.member__position {
    font-size      : 14px;
    font-weight    : 700;
    height         : 40px;
    margin-top     : 8px;
    text-transform : uppercase;
    color          : #db5134;
    opacity: 0.5;
}

.member__bio {
    font-size  : 14px;
    overflow   : hidden;
    width      : 100%;
    margin-top : 16px;
}

.smaller__image .member__image {
    transform : scale(0.8);
}

/* Cart Item Classes
   ==================== */

.cart-total {
    margin-bottom  : 8px;
    padding-bottom : 8px;
    text-align     : right;
    border-bottom  : 1px solid #FFFFFF;
}

.cart-item {
    display        : -ms-grid;
    display        : grid;
    -ms-grid-rows  : 1fr -webkit-max-content;
    -ms-grid-rows  : 1fr max-content;
    -ms-grid-columns  : 80px 125px 95px;
        grid-template  : 'image name name' 1fr
                     'image price quantity' -webkit-max-content / 80px 125px 95px;
        grid-template  : 'image name name' 1fr
                     'image price quantity' max-content / 80px 125px 95px;
    padding-bottom : 8px;
    border-bottom  : 1px solid #FFFFFF;
}

.cart-item + .cart-item {
    padding-top : 8px;
}

.without-image {
    -ms-grid-rows  : 1fr -webkit-max-content;
    -ms-grid-rows  : 1fr max-content;
    -ms-grid-columns  : 180px 100px;
        grid-template : 'name name' 1fr
                    'price quantity' -webkit-max-content / 180px 100px;
        grid-template : 'name name' 1fr
                    'price quantity' max-content / 180px 100px;
}

.without-image .cart-item__image {
    display : none;
}

.cart-item__image {
    -ms-grid-row        : 1;
    -ms-grid-row-span        : 3;
    -ms-grid-column        : 1;
    display          : flex;
    overflow         : hidden;
    align-items      : center;
    justify-content  : center;
    grid-area        : image;
    height           : 75px;
    margin-right     : 8px;
    border-radius    : 8px;
    background-color : #FFFFFF;
}

.product > .cart-item__image {
    -ms-grid-row        : 1;
    -ms-grid-row-span        : 1;
    -ms-grid-column        : 1;
}

.cart-item > .cart-item__image {
    -ms-grid-row        : 1;
    -ms-grid-row-span        : 2;
    -ms-grid-column        : 1;
}

.cart-item__image img {
    height : 100%;
}

.cart-item__name {
    -ms-grid-row  : 1;
    -ms-grid-column  : 2;
    grid-area  : name;
    text-align : left;
}

.product > .cart-item__name {
    -ms-grid-row  : 2;
    -ms-grid-column  : 1;
}

.part > .cart-item__name {
    -ms-grid-row  : 1;
    -ms-grid-column  : 2;
    -ms-grid-column-span  : 3;
}

.cart-item > .cart-item__name {
    -ms-grid-row  : 1;
    -ms-grid-column  : 2;
    -ms-grid-column-span  : 2;
}

.without-image > .cart-item__name {
    -ms-grid-row  : 1;
    -ms-grid-column  : 1;
    -ms-grid-column-span  : 2;
}

.cart-item__price {
    -ms-grid-row  : 2;
    -ms-grid-column  : 2;
    grid-area  : price;
    text-align : left;
}

.cart-item > .cart-item__price {
    -ms-grid-row  : 2;
    -ms-grid-column  : 2;
}

.without-image > .cart-item__price {
    -ms-grid-row  : 2;
    -ms-grid-column  : 1;
}

.cart-item__quantity {
    -ms-grid-row  : 2;
    -ms-grid-column  : 1;
    grid-area  : quantity;
    text-align : right;
}

.cart-item > .cart-item__quantity {
    -ms-grid-row  : 2;
    -ms-grid-column  : 3;
}

.without-image > .cart-item__quantity {
    -ms-grid-row  : 2;
    -ms-grid-column  : 2;
}

.cart-item.without-image span {
    margin-top : 8px;
}

/* Alerts Classes
   ==================== */

.alert {
    position   : absolute;
    top        : 0;
    right      : 0;
    left       : 0;
    width      : 100%;
    margin     : 0 auto;
    padding    : 16px;
    text-align : center;
    color      : #FFFFFF;
}

.alert-success {
    background-color : #db5134;
}

.alert-error {
    background-color : #D62D30;
}

.alert-warning {
    background-color : #db5134;
}

.alert i {
    position : absolute;
    top      : 16px;
    right    : 32px;
    bottom   : 0;
    cursor   : pointer;
}

/* Pagination Classes
   ==================== */

.pagination {
    margin-top : 16px;
}

.pagination.simple li {
    margin-right : 4px;
    margin-left  : 4px;
}

.pagination.simple li * {
    width : 125px;
}

.pagination.full {
    /*display : none;*/
}

.pagination.full li {
    margin-right : 4px;
    margin-left  : 4px;
}

.pagination__controls {
    text-align : center;
}

.pagination__controls li {
    display : none;
}

.pagination__controls li * {
    display         : inline-flex;
    align-items     : center;
    justify-content : center;
    width           : 40px;
    height          : 40px;
    padding         : 0;
}

.pagination__controls li:first-child,
.pagination__controls li:last-child {
    display : inline-block;
}

.pagination__dots {
    -webkit-user-select : none;
       -moz-user-select : none;
        -ms-user-select : none;
            user-select : none;
}

.pagination__results {
    margin-top : 8px;
    text-align : center;
}

/* Modal Global Classes
   ==================== */

#modal {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1000;
}

#modal.is-open {
    display: block;
}

#modal .modal__box {
    position: relative;
    background-color: #FFFFFF;
    max-width: 700px;
    height: 80vh;
    margin: 10vh auto;
    padding: 40px;
    border-radius: 11px;
    z-index: 100;
    overflow: auto;
}

#modal .modal__box:has(.is-open) {
    overflow: hidden;
}

#modal .modal__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    z-index: 1;
}

#modal .modal__content {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

#modal h3 {
    margin-top: 1vh;
    width: 100%;
    text-align: center;
}

#modal .modal__product-details {
    margin: 2vh auto;
}

#modal #modal__close {
    position: absolute;
    top: 10px;
    right: 20px;
    padding: 9px 15px 12px;
    border-radius: 50%;
    z-index: 10;
}

#modal label + label,
#modal label[for='modal_status'] {
    margin-top: 15px;
}

#modal label p {
    margin-bottom: 5px;
    color: #A2A2A2;
}

#modal input {
    font-weight: 700;
}

#modal #modal_product_image {
    height: 200px;
    margin: auto;
    cursor: zoom-in;
}

#modal label[for=modal_product_name],
#modal #modal_product_name {
    text-align: center;
}

#modal .modal__image-preview {
    position: absolute;
    bottom: calc(100% + 20px);
    left: 0;
    width: 100%;
    height: 100%;
    background: #A2A2A2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    transition: bottom 0.5s ease;
    cursor: zoom-out;
    padding: 20px;
}

#modal .modal__image-preview.is-open {
    bottom: 0;
    transition: bottom 0.5s ease;
}

#modal .status-declined {
    color: #D62D30;
}

#modal .status-accepted {
    color: #db5134;
}

#modal .status-active {
    color: inherit;
}

/* Authorization Pages Classes
   ==================== */

.login-png {
    background-image : url('../images/login/bg-image.png');
    opacity          : 0.75;
}

.login-webp {
    background-image : url('../images/login/bg-image.webp');
    opacity          : 0.75;
}

#register {
    background-image : url('../images/register/bg-image.jpg');
}

#forgot-password,
#reset-password {
    background-image : url('../images/password/bg-image.jpg');
    background-size  : cover;
}

#login,
#register,
#forgot-password,
#reset-password {
    display             : flex;
    align-items         : center;
    justify-content     : center;
    height              : 100%;
    background-repeat   : no-repeat;
    background-position : center;
}

#forgot-password button,
#reset-password button {
    width : auto;
}

#forgot-password .spinner,
#reset-password .spinner {
    margin : 24px auto;
}

/* Home Page Classes
   ==================== */

#home {
    position : relative;
}

#home .hero {
    box-sizing    : content-box;
    border-bottom : 100px solid #256CAF;
}

#home .hero::before {
    opacity          : 0.6;
    background-image : url('../images/home/hero.png');
}

/*#home .hero-home-webp::before {*/

/*    opacity          : 0.6;*/

/*    background-image : url('../images/home/hero.webp');*/

/*}*/

#home .hero__subtitle {
    font-weight    : 500;
    text-transform : uppercase;
    color          : #db5134;
}

#home .slider {
    max-width : 1200px;
}

#home .featured-products {
    background : linear-gradient(transparent 30%, #424242 30%);
}

#home .featured-products {
    margin-top : -180px;
}

#home .featured-products .featured__title {
    color : #424242;
}

#home .featured-categories .featured__title {
    color : #424242;
}

#home .featured-vendors {
    background-color : #dfdfdf;
}

#home .featured-vendors .featured__title {
    color : #db5134;
}

#home .featured-vendors .vendors {
    display         : flex;
    align-items     : center;
    flex-direction  : row;
    flex-wrap       : wrap;
    justify-content : center;
}

#home .featured-vendors .vendor {
    display         : flex;
    align-items     : center;
    justify-content : center;
    width           : 140px;
    height          : 70px;
    margin          : 15px 5px;
    padding         : 5px;
    border          : 1px solid rgba(211, 211, 211, 0.25);
    background      : #FFFFFF;
    box-shadow      : 0 0 10px 0 lightgrey;
}

#home .testimonials {
    display         : flex;
    align-items     : center;
    flex-wrap       : wrap;
    justify-content : center;
}

#home .testimonial {
    display         : flex;
    flex-direction  : column;
    justify-content : space-evenly;
    min-width       : 300px;
    height          : 600px;
    margin          : 15px;
    padding         : 24px;
}

#home .testimonial__header {
    margin-bottom : 16px;
}

#home .testimonial.woman-owned {
    border      : 1px solid #db5134;
    border-left : 10px solid #db5134;
}

#home .testimonial.woman-owned strong {
    font-size : 16px;
    color     : #424242;
}

#home .testimonial.woman-owned p {
    font-size : 16px;
    color     : #424242;
}

#home .testimonial.woman-owned p + p {
    margin-top : 16px;
}

#home .testimonial.endoscopy {
    position    : relative;
    overflow    : hidden;
    border      : 1px solid #eaeaea;
    border-left : 10px solid #eaeaea;
    background-image: url("../images/home/medanta-healthcare.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    color: #FFFFFF;
}

#home .testimonial.endoscopy:after {
    position            : absolute;
    top                 : 0;
    left                : 0;
    display             : block;
    width               : 100%;
    height              : 100%;
    content             : '';
    opacity             : 0.4;
    background          : #000;
    z-index             : 1;
}

#home .testimonial.endoscopy, .testimonial__content {
    font-weight     : 600;
    display         : flex;
    flex-direction  : column;
    justify-content : center;
    z-index: 10;
}

#home .testimonial__content {
    margin-top : 5px;
}

#home .testimonial.endoscopy p {
    width      : 100%;
    color: #eaeaea;
}

#home .testimonial.endoscopy h3 + p {
    margin-top : 8px;
}

#home .testimonial.endoscopy p + h3 {
    margin-top : 30px;
}

#home .testimonial.endoscopy img {
    max-width    : -webkit-fit-content;
    max-width    : -moz-fit-content;
    max-width    : fit-content;
    margin-top   : 16px;
    margin-right : auto;
    margin-left  : auto;
}

#home .testimonial.woman-owned .medanta-stats {
    display: flex;
}

#home .testimonial.woman-owned .medanta-stats li {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-basis: 0;
    flex-grow: 1;
    text-align: center;
    padding: 0 20px;
}

#home .testimonial.woman-owned .medanta-stats .big {
    font-size: 42px;
    font-weight: 700;
}

/* Products Page Classes
   ==================== */

#products .featured-products {
    background : linear-gradient(transparent 50%, #424242 50%);
}

#products .featured-products .featured__title {
    color : #424242;
}

#product section + section {
    margin-top : 24px;
}

#product .product-information h3 {
    margin-top    : 36px;
    margin-bottom : 8px;
    /*padding       : 16px;*/
}

/* Contact Page Classes
   ==================== */

#contact .hero {
    height : calc(100vh - 136px);
}

#contact .hero::before {
    background-image : url('../images/contact/hero.jpg');
    filter           : brightness(1.25);
    background-position: bottom;
}

#contact .hero > * {
    max-width : 600px;
}

#contact .hero span {
    margin-top: 5%;
}

#contact .hero__title {
    color : #FFFFFF;
}

#contact .hero__subtitle {
    color : #eaeaea;
}

#contact .contact-info {
    display         : flex;
    align-items     : center;
    flex-wrap       : wrap;
    justify-content : center;
    margin-top      : 40px;
    margin-bottom   : 40px;
    text-align      : center;
}

#contact .contact-info__title {
    width          : 100%;
    margin-bottom  : 20px;
    text-transform : uppercase;
    color          : #424242;
}

#contact .contact-box {
    width         : 350px;
    height        : 285px;
    border-bottom : 15px solid #424242;
}

#contact .contact-box .box__image {
    height : 90px;
}

#contact .contact-box .box__title {
    color : #db5134;
}

.box__image {
    color : #db5134;
}

#contact .contact-box .box__info {
    color : #424242;
}

#contact .contact-box a:hover {
    transform  : scale(1.075);
    transition : 0.35s;
}

#contact .additional-info {
    display             : flex;
    align-items         : flex-start;
    flex-wrap           : wrap;
    justify-content     : center;
    padding-top         : 50px;
    text-align          : center;
    background-image    : url('../images/contact/backdrop.jpg');
    background-repeat   : no-repeat;
    background-position : top;
}

#contact .additional-box {
    width         : 80%;
    max-width     : 650px;
    min-height    : 245px;
    border-bottom : 15px solid #db5134;
}

#contact .additional-box .box__title {
    text-transform : uppercase;
    color          : #db5134;
}

#contact .additional-box .box__content {
    font-weight : 600;
    color       : #A2A2A2;
}

#contact .additional-box .box__info {
    font-weight   : 600;
    overflow      : hidden;
    width         : 100%;
    margin-top    : 24px;
    white-space   : nowrap;
    text-overflow : ellipsis;
    color         : #424242;
}

#contact .additional-info .contact {
    width : 100%;
}

/* About Page Classes
   ==================== */

#about .hero::before {
    background-image : url('../images/about/hero.jpg');
    filter           : brightness(0.65);
}

#about .hero-about-webp::before {
     background-image : url('../images/about/hero.webp');
     filter           : brightness(0.65);
}

#about .hero__title {
    color         : #FFFFFF;
    margin-bottom : 2%;
    max-width: 800px;
}

#about .hero__subtitle {
    color : #eaeaea;
    font-weight: 700;
}

#about .hero__subtitle a {
    color: #db5134;
    transition: all 0.5s;
    text-decoration: underline;
}

#about .hero__subtitle a:hover {
    color: #eaeaea;
    transition: all 0.5s;
}

#about .facts {
    display         : flex;
    align-items     : center;
    flex-wrap       : wrap;
    justify-content : center;
    margin-top      : 40px;
    margin-bottom   : 40px;
    text-align      : center;
}

#about .facts__title {
    width          : 100%;
    margin-bottom  : 20px;
    text-transform : uppercase;
    color          : #424242;
}

#about .fact-box {
    width         : 350px;
    height        : 225px;
    border-bottom : 15px solid #424242;
}

#about .fact-box .box__image {
    height : 90px;
}

#about .management {
    background : linear-gradient(transparent 50%, #424242 50%);
}

#about .management__title {
    text-align     : center;
    text-transform : uppercase;
    color          : #424242;
}

#about .advisers {
    display         : flex;
    align-items     : center;
    flex-wrap       : wrap;
    justify-content : center;
    margin-top      : 40px;
    text-align      : center;
}

#about .advisers__title {
    width          : 100%;
    margin-bottom  : 20px;
    text-align     : center;
    text-transform : uppercase;
    color          : #db5134;
}

#about .adviser-box {
    overflow-y    : auto;
    width         : 80%;
    max-width     : 600px;
    height        : 300px;
    border-bottom : 15px solid #db5134;
}

#about .adviser-box .box__title {
    text-transform : uppercase;
    color          : #db5134;
}

#about .adviser-box .box__info {
    text-transform : uppercase;
    color          : #db5134;
}

#about .adviser-box .box__content {
    height   : 100px;
}

#about .adviser-box:hover .box__content {
    height : auto;
}

#about #facts .box__content {
    margin-top : 12px;
}

/* Profile Page Classes
   ==================== */

#profile {
    position            : relative;
    padding-top         : 50px;
    display             : flex;
    align-items         : flex-start;
    flex-wrap           : wrap;
    justify-content     : center;
    height              : 100%;
    background-repeat   : no-repeat;
    background-position : center;
    background-image    : url('../images/contact/backdrop.jpg');
}

#profile form {
    height : auto;
}

#profile form {
    background-color : transparent;
    color: #db5134;
}

#profile input {
    background-color : transparent;
    color: #db5134;
}

#profile select {
    color: #db5134;
}

#profile form > div + div {
    margin-top : 24px;
}

#profile .user__info,
#profile .shipping-details,
#profile .billing-details {
    width : 100%;
}

#profile .user__info h3,
#profile .shipping-details h3,
#profile .billing-details h3 {
    margin-bottom : 24px;
}

#profile .billing-details {
    display : none;
}

#profile label[for=order-different-billing] {
    padding    : 10px 0;
    text-align : center;
    color: #424242;
}

#profile .alert {
    position : absolute;
    width    : 100vw;
    margin   : 0;
}

/* Cart Page Classes
   ==================== */

.float-left {
    float : left;
}

.float-right {
    float : right;
}

.item-quantity-selection {
    width   : 3vw;
    outline : none;
}

.item-quantity-selection:focus {
    transition    : 0.5s;
    border-bottom : 2px solid #1159C7;
}

.cart__menu {
    width     : auto !important;
    max-width : 480px;
}

.cart__menu.is-open li:nth-child(n+2):hover {
    transition : 0.2s;
    transform  : scale(1.075);
}

.cart__menu.is-open li:nth-child(3) {
    margin-top : 16px;
}

.cart__item {
    display       : flex;
    align-items   : center;
    margin        : 0;
    padding       : 7px 0;
    border-bottom : 1px solid white;
}

#cart {
    position    : relative;
    display     : flex;
    align-items : flex-start;
    flex-wrap   : wrap;
}

.shopping-cart {
    display        : flex;
    flex-direction : column;
    width          : 80%;
    max-width      : 900px;
    margin         : 0 auto;
}

.shopping-cart h1 {
    margin-top    : 24px;
    margin-bottom : 24px;
    text-align    : center;
}

.shopping-cart-item {
    display       : -ms-grid;
    display       : grid;
    -ms-grid-rows  : 120px -webkit-max-content -webkit-max-content -webkit-max-content -webkit-max-content -webkit-max-content -webkit-max-content;
    -ms-grid-rows  : 120px max-content max-content max-content max-content max-content max-content;
    -ms-grid-columns  : 1fr;
        grid-template :
        'cart-image' 120px
        'cart-name' -webkit-max-content
        'cart-header' -webkit-max-content
        'cart-parts' -webkit-max-content
        'cart-total' -webkit-max-content
        'cart-buttons' -webkit-max-content
        'cart-footer' -webkit-max-content / 1fr;
        grid-template :
        'cart-image' 120px
        'cart-name' max-content
        'cart-header' max-content
        'cart-parts' max-content
        'cart-total' max-content
        'cart-buttons' max-content
        'cart-footer' max-content / 1fr;
    width         : 100%;
    padding       : 8px 16px;
    border        : 1px solid lightgray;
}

.shopping-cart-item + .shopping-cart-item {
    margin-top : 10px;
}

.shopping-cart-item__image {
    -ms-grid-row       : 1;
    -ms-grid-column       : 1;
    display         : flex;
    -ms-grid-row-align      : center;
        align-self      : center;
    justify-content : center;
    grid-area       : cart-image;
}

.shopping-cart-item__image img {
    width      : auto;
    max-width  : 150px;
    height     : 100%;
    margin     : auto;
    -o-object-fit : contain;
       object-fit : contain;
}

.shopping-cart-item__name {
    -ms-grid-row      : 2;
    -ms-grid-column      : 1;
    font-weight    : 700;
    grid-area      : cart-name;
    margin-top     : 8px;
    padding        : 10px 0;
    text-transform : uppercase;
    color          : #000000;
    border-bottom  : 1px solid;
}

.shopping-cart-item__header {
    -ms-grid-row : 3;
    -ms-grid-column : 1;
    display   : none;
    grid-area : cart-header;
    padding   : 10px 0;
}

.shopping-cart-item__parts {
    -ms-grid-row : 4;
    -ms-grid-column : 1;
    display   : flex;
    flex-wrap : wrap;
    grid-area : cart-parts;
    padding   : 10px 0;
}

.shopping-cart-item__parts + .shopping-cart-item__parts {
    border-top : 1px solid #A2A2A2;
}

.shopping-cart-item__parts > * {
    display         : flex;
    align-items     : center;
    flex-wrap       : wrap;
    justify-content : space-between;
    width           : 100%;
}

.shopping-cart-item__parts > * > span {
    max-width : 90%;
    padding   : 10px 0;
}

.shopping-cart-item__parts > *:before {
    font-weight  : 700;
    margin-right : 8px;
    padding      : 10px 0;
    content      : attr(data-name);
    color        : #000000;
}

.shopping-cart-item__parts input {
    width : auto;
}

.shopping-cart-item__footer {
    -ms-grid-row  : 7;
    -ms-grid-column  : 1;
    grid-area  : cart-footer;
    text-align : right;
}

.shopping-cart-item__parts--buttons {
    -ms-grid-row       : 6;
    -ms-grid-column       : 1;
    justify-content : flex-end;
    grid-area       : cart-buttons;
    padding         : 10px 0;
}

.shopping-cart-item__parts--buttons button + button {
    margin-left : 8px;
}

.shopping-cart-item__parts--buttons:before {
    display : none;
}

.cart-summary {
    display        : flex;
    flex-direction : column;
    width          : 100%;
    margin         : 0 auto;
}

.cart-summary h1 {
    margin-top    : 24px;
    margin-bottom : 24px;
    text-align    : center;
}

.cart-summary__info {
    padding : 15px 20px;
    border  : 1px solid #E5E5E5;
}

.cart-summary__info > div {
    display         : flex;
    align-items     : center;
    justify-content : space-between;
    padding         : 10px 0;
}

.cart-summary__info--subtotal {
    border-top : 1px solid #A2A2A2;
}

.cart-summary__info--value {
    font-weight : 700;
}

.cart-empty {
    margin     : 5vh auto auto;
    text-align : center;
}

.cart-empty h4, .cart-empty a {
    font-size : 25px;
}

.cart-empty h4 {
    margin-bottom : 16px;
}

.cart-empty-dropdown {
    font-weight   : bold;
    margin-top    : -5px;
    margin-bottom : 10px;
    white-space   : nowrap;
}

/* Checkout Page Classes
   ==================== */

#checkout {
    display             : flex;
    align-items         : flex-start;
    flex-direction      : column;
    justify-content     : center;
    height              : 100%;
    background-repeat   : no-repeat;
    background-position : center;
}

#checkout form.primary {
    max-width : unset;
}

#checkout .checkout__details {
    width         : 100%;
    margin-top    : 3vh;
    margin-bottom : 3vh;
    text-align    : center;
    color         : #424242;
}

#checkout .shipping-details, #checkout .billing-details, #checkout .personal-information, #checkout .totals {
    padding       : 15px;
    border        : 1px solid rgba(211, 211, 211, 0.25);
    border-radius : 11px;
    box-shadow    : 0 0 10px 0 lightgrey;
}

#checkout .checkout__details, #checkout .checkout__totals {
    margin-top : 2vh;
}

#checkout .checkout__details form {
    width  : 100%;
    height : auto;
    margin : auto;
}

#checkout .bid__checkout {
    padding       : 15px;
    border        : 1px solid rgba(211, 211, 211, 0.25);
    border-radius : 11px;
    box-shadow    : 0 0 10px 0 lightgrey;
}

#checkout .checkout__details h1 {
    max-width  : 700px;
    margin     : auto;
    padding    : 8px 16px;
    text-align : center;
}

#checkout .checkout__details h3 {
    margin-bottom : 32px;
}

#checkout .checkout__totals {
    width   : 100%;
    /*padding : 8px 16px;*/
}

#checkout .checkout__totals div + div {
    margin-top : 24px;
}

#checkout .checkout__totals h3 {
    margin-bottom : 24px;
}

#checkout .checkout__totals label > * {
    display : inline-block;
}

#checkout .checkout__totals label + label {
    margin-top : 8px;
}

#checkout .checkout__totals label > h5 {
    width : 100px;
}

#checkout .checkout__totals label[for=cart-total] {
    padding-top : 8px;
    border-top  : 2px solid #A2A2A2;
}

#checkout .checkout__totals label {
    color : unset;
}

#checkout .shipping-details {
    width : 100%;
}

#checkout label[for="billing-state"] div {
    margin-bottom : 10px;
}

#checkout label {
    padding-top : 8px;
}

#checkout .shipping-personal-info {
    display        : flex;
    flex-direction : row;
    width          : 100%;
}

/*#checkout label[for=shipping-state] select,*/

/*#checkout label[for=billing-state] select {*/

/*    width         : 100%;*/

/*    height        : 40px;*/

/*    border        : 2px solid var(--clr-grey);*/

/*    border-radius : 8px;*/

/*    color         : var(--clr-lightblue);*/

/*}*/

#checkout label[for=order-different-billing] {
    display         : inline-flex;
    align-items     : center;
    justify-content : space-between;
    height          : 40px;
    margin          : 24px 0;
}

#checkout .billing-details {
    display       : none;
    width         : 100%;
    margin-bottom : 20px;
}

#checkout label[for=order-phone] {
    margin : 24px 0;
}

#checkout .personal-information {
    width  : 100%;
    margin : 16px 0 16px 0;
}

#checkout .personal-information, #checkout .shipping-details, #checkout .billing-details {
    box-shadow    : 0 0 10px 0 lightgrey;
    padding       : 32px 32px;
    border-radius : 12px;
    margin        : 20px;
}

#checkout .personal-information span, #checkout .shipping-details span, #checkout .billing-details span, #checkout label[for="order-phone"] span, #checkout .icons > div {
    color : black;
}

#checkout label[for=order-payment-secure] {
    display         : flex;
    align-items     : center;
    flex-wrap       : wrap;
    justify-content : center;

}

#checkout label[for=order-payment-secure] > div {
    display        : flex;
    align-items    : center;
    flex-direction : column;
    width          : 250px;
    margin         : 5px;
    padding        : 20px 0;
    border         : 1px solid #eaeaea;
    border-radius  : 8px;
    box-shadow     : 0 0 5px 0 #A2A2A2;
}

#checkout label[for=order-payment-secure] > div i {
    font-size     : 24px;
    margin-right  : 8px;
    margin-bottom : 16px;
}

#checkout label[for=order-payment-card] {
    display         : inline-flex;
    align-items     : center;
    justify-content : space-between;
    height          : 40px;
    margin          : 24px 0;
}

#checkout label[for=order-payment-card] .icons {
    display     : flex;
    align-items : center;
}

#checkout label[for=order-payment-card] i {
    font-size : 40px;
}

#checkout label[for=order-payment-card] i + i {
    margin-left : 4px;
}

#checkout label[for=order-payment-card] input {
    width  : 40px;
    height : auto;
}

#checkout input {
    color: #000000;
}

/* Thank You Page Classes
   ==================== */

#thank-you {
    display          : flex;
    align-items      : center;
    justify-content  : center;
    width            : 100%;
    height           : 100%;
    background-image : url('../images/order/bg-image.jpg');
}

#thank-you h1 {
    margin-top     : 64px;
    margin-bottom  : 0;
    text-transform : uppercase;
    color          : #db5134;
}

#thank-you h3 {

    margin-top : 8px;
    color      : #424242;
}

#thank-you span {
    font-size      : 24px;
    line-height    : 28px;
    margin-top     : 64px;
    text-transform : uppercase;
    color          : #eaeaea;
}

#thank-you ul li {
    font-size      : 20px;
    line-height    : 24px;
    display : block;
    margin-top : 16px;
}

#thank-you ul li a {
    color : #A2A2A2
}

/* Admin Page Classes
   ==================== */

#admin {
    display  : flex;
    overflow : hidden;
    height   : 100%;
}

#admin > aside {
    z-index          : 1;
    overflow         : hidden;
    width            : 0;
    padding          : 0 20px;
    transition       : width 250ms linear;
    color            : #FFFFFF;
    background-color : #424242;
    box-shadow       : 1px 0 5px 0 #eaeaea;
}

#admin > aside > * {
    overflow    : hidden;
    padding     : 10px 0;
    white-space : nowrap;
}

#admin .sidebar__logo {
    padding : 10px 0;
}

#admin .sidebar__logo img {
    margin-right : auto;
    margin-left  : auto;
}

#admin .sidebar__user {

}

#admin .sidebar__controls > li {
    display : block;
}

#admin .sidebar__controls > li + li {
    margin-top : 8px;
}

#admin .sidebar__menu > li {
    display     : block;
    margin-left : 16px;
}

#admin > section {
    overflow : auto;
    width    : 100%;
}

#admin > section#product {
    display         : flex;
    overflow        : auto;
    flex-wrap       : wrap;
    justify-content : space-between;
}

#admin > section#product form {
    flex-direction  : row;
    flex-wrap       : wrap;
    justify-content : space-between;
    width           : 48%;
    max-width       : 1000px;
    margin          : 0 auto;
    gap             : 5px 0;
}

#admin > section#product form label {
    display         : flex;
    flex-direction  : column;
    justify-content : flex-end;
    min-height      : 60px;
    margin-top      : 0;
}

#admin > section#product form input:not(:-moz-placeholder-shown) + span {
    top : 0;
}

#admin > section#product form input:not(:-ms-input-placeholder) + span {
    top : 0;
}

#admin > section#product form label:focus-within span, #admin > section#product form input:not(:placeholder-shown) + span {
    top : 0;
}

#admin > section#product form label span {
    top : 30px;
}

#admin > section#product form input[type=file] {
    height : auto;
}

#admin > section header {
    padding          : 10px;
    color            : #FFFFFF;
    background-color : #424242;
}

#admin .section-header__controls li + li {
    margin-left : 8px;
}

#admin .section-content {
    position       : relative;
    display        : flex;
    align-items    : center;
    flex-direction : column;
}

#admin .section-content input#table-search {
    padding : 0 10px;
}

#admin .section-content input:focus {
    border-bottom : 2px solid #eaeaea;
    outline       : none;
}

#admin .section-content table {
    display      : block;
    width        : 100%;
    height       : 77%;
    margin       : auto;
    table-layout : fixed;
}

#admin .section-content thead {
    display : table;
    /*width   : 100%;*/
    width   : calc(100% - 17px);
}

#admin .section-content th {
    position         : relative;
    padding          : 5px 10px;
    cursor           : pointer;
    text-align       : left;
    color            : #FFFFFF;
    border           : 1px solid #424242;
    background-color : #eaeaea;
}

#admin .section-content th a {
    width : 100%;
}

#admin .section-content th i {
    position  : absolute;
    top       : 50%;
    right     : 10px;
    transform : translateY(-50%);
}

#admin .section-content th.sorting_desc i::before {
    content : '\f15d';
}

#admin .section-content th.sorting_asc i::before {
    content : '\f881';
}

#admin .section-content tbody {
    display    : block;
    overflow   : scroll;
    overflow-x : hidden;
    width      : 100%;
    height     : 90%;
}

#admin .section-content tbody tr {
    display      : table;
    width        : 100%;
    table-layout : fixed;
}

#admin .section-content tbody tr td {
    height         : 52px;
    padding        : 5px 10px;
    vertical-align : middle;
    word-break     : break-all;
    border         : 1px solid #424242;
}

#admin .utilities {
    position : absolute;
    right    : 0;
    bottom   : 16px;
    left     : 0;
}

#admin #users th {
    width : calc(100% / 4) !important;
}

#admin #products th {
    width : calc(100% / 5) !important;
}

#admin #orders th {
    width : calc(100% / 7) !important;
}

#admin #vendors th {
    width : calc(100% / 3) !important;
}

#admin #order table {
    display : table;
}

#admin #user-edit {
    display         : flex;
    align-items     : center;
    justify-content : center;
}

#admin #order-edit {
    overflow : auto;
    padding-bottom: 40px;
}

#admin #order-edit form {
    align-items    : flex-start;
    flex-direction : row;
    flex-wrap      : wrap;
    max-width      : none;
}

#admin #order-edit form h4 {
    margin-bottom : 24px;
}

#admin #order-edit form > div {
    width  : 100%;
    margin : 20px;
}

#admin #order-edit .order-details-alt {
    display         : flex;
    flex-wrap       : wrap;
    justify-content : space-between;
    width           : 100%;
}

#admin #order-edit .order-details-alt label {
    width : calc(50% - 20px);
}

#admin #order-edit .products-details {
    width     : 100%;
    max-width : none;
}

#admin #order-edit table {
    width        : 100%;
    margin       : auto;
    table-layout : auto;
    text-align   : left;
}

#admin #order-edit thead {
    display : table-header-group;
}

#admin #order-edit tbody {
    display : table-row-group;
}

#admin #order-edit tr {
    display : table-row;
}

#admin .form_new_product #part-undo {
    margin-top : 5px;
}

#admin .new-part-info {
    margin-top : 10px;
    text-align : center;
}

#admin .product-categories {
    width : 95%;
}

#admin .far:hover, .fas:hover {
    transform : scale(1.1);
}

#admin .product_actions {
    display         : flex;
    align-items     : center;
    flex-direction  : row;
    justify-content : space-evenly;
}

#admin .product_actions > * {
    display        : flex;
    align-items    : center;
    flex-direction : column;
    width          : 33%;
}

#admin .product_actions a span {
    margin-top : 4px;
}

#admin .far.fa-trash-alt.fa-lg {
    position : relative;
}

#admin #trash-disable {
    font-size : 110%;
    position  : absolute;
    top       : -25%;
    left      : 50%;
    transform : translate(-50%, 0);
    color     : #D62D30;
}

#admin .trash-disabled {
    transform : unset !important;
}

#admin .form_part_edit, .product-parts {
    margin-top : 30px;
}

#admin h3.product-parts {
    text-align : center;
}

#admin #product .form_new_product > * {
    width : 100%;
}

#admin #product .form_new_product textarea.description {
    display : block;
    height  : 125px;
}

#admin #product .form_new_product textarea.summary {
    display : block;
    height  : 125px;
}

#admin #product .parts-list {
    display : inline-block;
}

#admin #product .products-parts {
    display       : -ms-grid;
    display       : grid;
    -ms-grid-rows  : -webkit-max-content;
    -ms-grid-rows  : max-content;
    -ms-grid-columns  : 30% 70%;
        grid-template : 'part-aside part-info' -webkit-max-content / 30% 70%;
        grid-template : 'part-aside part-info' max-content / 30% 70%;
    width         : 48%;
    max-width     : 1000px;
    margin        : 0 auto;
    padding       : 16px 32px;
}

#admin #product .products-parts__aside {
    -ms-grid-row     : 1;
    -ms-grid-column     : 1;
    grid-area     : part-aside;
    padding-right : 16px;
    border-right  : 1px solid #eaeaea;
}

#admin #product .products-parts__aside li {
    display : block;
    color   : #eaeaea;
}

#admin #product .products-parts__aside li a {
    overflow      : hidden;
    width         : 100%;
    text-overflow : ellipsis;
}

#admin #product .products-parts__aside a.is-active {
    font-weight : 700;
    color       : #424242;
}

#admin #product form.products-parts__info {
    -ms-grid-row      : 1;
    -ms-grid-column      : 2;
    display        : none !important;
    flex-direction : row;
    flex-wrap      : wrap;
    grid-area      : part-info;
    width          : 100%;
    margin-top     : 0 !important;
}

#admin #product .products-parts__info {
    -ms-grid-row       : 1;
    -ms-grid-column       : 2;
    display         : none !important;
    flex-direction  : row;
    flex-wrap       : wrap;
    justify-content : space-between !important;
    grid-area       : part-info;
    max-width       : none !important;
    margin-top      : 0 !important;
}

#admin #product .products-parts__info.is-open {
    display : flex !important;
}

#admin #product .product_visibility {
    display         : flex;
    flex-direction  : row;
    flex-wrap       : wrap;
    justify-content : space-between;
}

#admin #product .product_assets_new {
    display         : flex;
    flex-direction  : column;
    justify-content : space-between;
}

#admin #product .product_assets_new i {
    margin-top : 2vh;
}

#admin #product i {
    color : black;
}

#admin .parts-information {
    padding       : 2px;
    margin-top    : 3px;
    border-bottom : 1px solid black;
}

#admin .new-product-heading {
    width      : 100%;
    margin     : 12px 0;
    text-align : center;
    padding    : 10px;
}

#admin #vendor-edit {
    display         : flex;
    align-items     : center;
    justify-content : center;
}

#admin #vendor-edit {
    display         : flex;
    align-items     : center;
    justify-content : center;
}

.half-width {
    width : 49% !important;
}

.third-width {
    width : 32% !important;
}

.quarter-width {
    width : 24% !important;
}

.with-icon {
    display         : flex;
    align-items     : flex-end;
    flex-direction  : row !important;
    flex-wrap       : wrap;
    justify-content : space-between !important;
}

.with-icon > input {
    width : 95%;
}

.with-icon > i {
    -ms-grid-row-align : center;
        align-self : center;
}

.radio-label {
    display         : flex;
    align-items     : center;
    flex-direction  : row !important;
    justify-content : flex-start !important;
    margin          : 8px 0;
    margin-top      : 0 !important;
    gap             : 8px;
}

.radio-label > div {
    width      : 90%;
    text-align : left;
}

#admin input[type='radio'] {
    width : unset;
}

.product-assets__asset:hover {
    transition       : 0.15s;
    background-color : #EBEBEB;
}

#admin .view-product-page {
    padding : 20px;
}

#admin #form_product_edit, #admin #form_product {
    border        : 1px solid rgba(211, 211, 211, 0.25);
    border-radius : 11px;
    box-shadow    : 0 0 10px 0 lightgrey;
}

/* Auction Page Classes
   ==================== */

#auctions {
    display        : flex;
    align-items    : center;
    flex-direction : row;
    flex-wrap      : wrap;
}

#auctions h3 {
    width         : 100%;
    margin-top    : 5vh;
    margin-bottom : 5vh;
    text-align    : center;
    color         : #424242;
}

#auctions_admin h3 {
    width         : 100%;
    margin-top    : 5vh;
    margin-bottom : 5vh;
    text-align    : center;
    color         : #424242;
}

#auctions .auction-bids h3 {
    margin-top    : 3vh;
    margin-bottom : 5vh;
}

#auctions form {
    align-items     : flex-start;
    flex-direction  : column;
    flex-wrap       : wrap;
    justify-content : space-between;
    max-width       : 1400px;
    margin          : 0 auto;
}

#auctions .auction__info,
#auctions .shipping__details {
    display         : flex;
    flex-direction  : row;
    flex-wrap       : wrap;
    justify-content : space-between;
    width           : 100%;
    padding         : 20px;
    border          : 1px solid rgba(211, 211, 211, 0.25);
    border-radius   : 11px;
    box-shadow      : 0 0 10px 0 lightgrey;

}

#auctions .image__container {
    width  : 150px;
    height : 150px;
    cursor : pointer;
}

#auctions .section__title {
    margin-top    : 1vh;
    margin-bottom : 3vh;
    color         : #000000;
}

#auctions label + label {
    margin-top : 24px;
}

#auctions label.half-width:first-of-type + label,
#auctions label.third-width:first-of-type + label,
#auctions label.third-width:nth-of-type(2) + label {
    margin-top : 0;
}

#auctions p {
    margin-bottom : 12px;
    color         : #A2A2A2;
}

#auctions textarea {
    height : 125px;
}

#auctions button {
    margin : 18px auto;
}

#auctions .new_product-documentation {
    margin-bottom : 2vh;
}

#auctions #category-remove-response {
    margin-top    : 1vh;
    margin-bottom : 1vh;
}

#auctions .button_create_auction {
    -webkit-animation : pulse 3s infinite;
            animation : pulse 3s infinite;
    border    : 2px solid #3FAFEF !important;
}

.auctions__show .auctions {
    display         : flex;
    align-items     : flex-start;
    flex-direction  : row;
    flex-wrap       : wrap;
    justify-content : space-between;
}

.auctions__show input {
    font-weight : 700;
}

/* Datatables Section */

#auctions .dataTables_wrapper .dataTables_filter {
    color : #424242;
}

#auctions .dataTable thead tr {
    color            : #FFFFFF;
    background-color : #424242;
}

#auctions .auction-offers {
    display        : flex;
    align-items    : center;
    flex-direction : column;
    width          : 100%;
    margin-top     : 5vh;
    overflow-x: auto;
}

#auctions .auction-offers .auction-bids {
    width: 100%;
}

#auctions .auction-offers p {
    margin-bottom : unset;
}

#auctions .auction-bid {
    margin-top : 2vh;
}

#auctions .auction-documentation {
    color : #0000EE;
}

#auctions .auction-documentation:hover {
    transform : scale(1.02);
}

#auctions .auction__offer--title {
    color : #db5134;
}

#auctions .auction__offer {
    display        : flex;
    flex-direction : row;
    width          : 80%;
    max-width      : 700px;
    margin-top     : 3vh;
    padding        : 20px;
    border         : 1px solid rgba(211, 211, 211, 0.25);
    border-radius  : 11px;
    box-shadow     : 0 0 10px 0 lightgrey;
}

#auctions .auction__offer input {
    outline : none;
}

#auctions .auction__offer input:focus {
    border-bottom : 2px solid #3FAFEF;
}

#auctions label[for=offer_amount] {
    position: relative;
}

#auctions label[for=offer_amount] input {
    padding-left: 18px;
}

#auctions label[for=offer_amount]:before {
    position: absolute;
    top: 41px;
    left: 0;
    display: block;
    content: '$';
    width: 20px;
    height: 20px;
    font-weight: 700;
}

#auctions .auction__status {
    width      : 100%;
    margin-top : 3vh;
    text-align : center;
}

#allAuctions_length,
#allAuctions_filter {
    margin-top    : 2vh;
    margin-bottom : 4vh;
}

#auctions table.dataTable.no-footer {
    border-bottom : 2px solid #A2A2A2;
}

#auctions tbody {
    color : gray;
}

#auctions table.dataTable thead th {
    border-bottom : 1px solid #424242;
}

#auctions table.dataTable thead td {
    border-bottom : 1px solid #424242;
}

#auctions .functions {
    font-weight : 700;
    color       : #db5134;
}

#auctions .functions::after {
    display     : inline-block;
    margin-left : 8px;
    content     : '\00BB';
}

#auctions .dataTables_wrapper .dataTables_paginate .previous:before {
    display      : inline;
    margin-right : 8px;
    content      : '\00AB';
}

#auctions .dataTables_wrapper .dataTables_paginate .next:after {
    display     : inline;
    margin-left : 8px;
    content     : '\00BB';
}

#auctions .form__response {
    display        : flex;
    flex-direction : row;
}

#auctions .bid__message {
    word-break : break-word;
    width      : 35%;
}

.auctions__offers {
    width         : 100%;
    border        : 1px solid rgba(211, 211, 211, 0.25);
    border-radius : 11px;
    box-shadow    : 0 0 10px 0 lightgrey;
}

.auctions__offers thead {
    color            : #FFFFFF;
    background-color : #424242;
}

.auctions__offers th {
    padding : 10px;
}

.auctions__offers tbody {
    color : gray;
}

.auctions__offers tbody tr {
    background-color : #F9F9F9;
}

.auctions__offers tbody td {
    padding : 8px 10px;
}

.owner {
    font-weight : 700;
    position    : relative;
    color       : #eaeaea;
}

.owner .tooltip {
    position         : absolute;
    z-index          : 1;
    left             : 90%;
    visibility       : hidden;
    width            : 120px;
    margin-left      : -60px;
    padding          : 5px 0;
    text-align       : center;
    color            : #FFFFFF;
    border-radius    : 11px;
    background-color : #eaeaea;
}

.owner:hover .tooltip {
    visibility : visible;
}

.fields {
    width     : 100%;
    display   : flex;
    flex-wrap : wrap;
}

.StripeElement {
    color         : inherit;
    border-bottom : 2px solid #A2A2A2;
    width         : 100%;
}

.StripeElement--invalid {
    border-bottom : 2px solid #D62D30;
}

.error {
    width            : 100%;
    border           : 2px solid #D62D30;
    border-radius    : 8px;
    color            : #D62D30;
    background-color : rgba(240, 68, 56, 0.15);
    display          : flex;
    justify-content  : center;
    align-items      : center;
    padding          : 12px 8px;
}

.bid_total {
    margin-top    : 3vh;
    margin-bottom : 3vh;
    font-size    :  large;
}

.bid-checkout-header {
    width         : 100%;
    margin-bottom : 3vh;
    text-align    : center;
    color         : #000000;
}

.bid-totals {
    width           : 100%;
    display         : flex;
    flex-direction  : column;
}

.bid-totals p:first-of-type {
    margin-top: 2vh;
}

.bid-totals p strong {
    color: #db5134;
}

#payButton {
    margin : 12px auto;
}

#auctions .auction__product-details {
    margin-top : 30px;
}

#auctions .offer_product_checkbox {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
}

#auctions .section__subtitle {
    margin-top: 20px;
}

#auctions .offer_product_custom_details {
    margin-top: 20px;
    display: flex;
    width: 100%;
    height: 72px;
    justify-content: space-between;
    overflow: hidden;
    transition: height 0.3s;
}

#auctions .auction-bids .bid-status-accepted {
    color: #db5134;
}

#auctions .auction-bids .bid-status-declined {
    color: #D62D30;
}

/* Vendor Generated Classes
   ==================== */

/*@import 'vendors/slick.css';*/

/*@import 'vendors/slick-theme.css';*/

.dataTables_wrapper {
    display   : flex;
    flex-wrap : wrap;
    height    : 100%;
    margin    : 10px;
}

.dataTables_length {
    width  : auto;
    height : 40px;
}

.dataTables_length label {
    width : auto;
    color : #424242;
}

.dataTables_length select {
    width : auto;
    color : #424242;
}

.dataTables_filter {
    flex-grow   : 1;
    height      : 40px;
    margin-left : 24px;
}

.dataTables_filter label {
    display     : flex;
    align-items : center;
}

.dataTable {
    width  : 100% !important;
    margin : 0 !important;
}

.dataTables_info {
    flex-grow : 1;
    margin    : 10px 0;
}

.dataTables_paginate {
    margin : 10px 0;
}

.dataTables_paginate > * + * {
    margin-left : 8px;
}

.dataTables_paginate a {
    padding          : 5px 10px;
    cursor           : pointer;
    text-align       : center;
    color            : #3FAFEF;
    border           : 1px solid #256AAF;
    background-color : #FFFFFF;
}

.dataTables_paginate > a {
    width : 100px;
}

.dataTables_paginate span > a {

}

.dataTables_paginate span > a + a {
    margin-left : 4px;
}

.dataTables_paginate .ellipsis {
    margin : 0 8px;
}

.dataTables_paginate .current {
    color            : #FFFFFF;
    border           : 1px solid #256AAF;
    background-color : #3FAFEF;
}

/* Modifier Classes
   ==================== */

.invalid-feedback {
    margin-top : 4px;
    color      : #D62D30 !important;
}

.is-invalid {
    border-bottom : 2px solid #D62D30;
}

select.is-invalid {
    border : 2px solid #D62D30;
}

textarea.is-invalid {
    border : 2px solid #D62D30;
}

.btn.is-active {
    color            : #FFFFFF;
    background-color : #eaeaea;
}

.dropdown.is-open {
    width      : 175px;
    padding    : 16px 24px;
    transition : opacity 250ms linear;
    opacity    : 1;
}

.menu.is-open {
    display : block;
}

#admin aside.is-open {
    min-width  : 215px;
    transition : width 250ms linear;
}

.subcategories {
    width          : 90%;
    margin-bottom  : 8px;
    margin-left    : 16px;
    padding-bottom : 8px;
    padding-left   : 16px;
    color          : #db5134;
    border-bottom  : 1px solid;
    border-left    : 1px solid;
}

.children {
    padding-top    : 5px;
    padding-bottom : 5px;
    padding-left   : 16px;
    border-bottom  : 1px solid;
    border-left    : 1px solid;
}

.siblings {
    padding-top : 5px;
}

.is-child {
    color : #db5134;
}

.is-grandchild {
    color : #db5134;
}

.is-collapsed {
    overflow       : hidden;
    height         : 0 !important;
    margin-bottom  : 0;
    padding-bottom : 0;
    border         : none;
}

.is-open:before {
    transform : rotate(90deg);
}

.is-active:before {
    position : absolute;
    left     : 0;
    display  : inline;
    content  : '\003E';
    cursor   : pointer;
}

.no-before::before {
    display : none;
}

.category__list .is-active {
    font-weight : 700;
    color       : #db5134;
}

.category__list .is-main {
    font-weight : 700;
    color       : #db5134;
}

.category__list .is-active {
    display      : inline;
    padding-left : 16px;
}

.category__list .is-active i {
    margin-right : 8px;
    transform    : rotate(90deg);
}

.sidebar__menu .is-active {
    color : #eaeaea;
}

.sidebar__title.is-active {
    font-weight : 700;
    color       : #eaeaea;
}

.is-redirecting {
    color : #000000;
}

.is-centered {
    text-align : center;
}

.is-logged {
    width : 100%;
}

.status-active {
    color: #db5134;
}

.status-cancelled {
    color: #D62D30;
}

.status-closed {
    color: #db5134;
}

.is-hidden {
    display : none !important;
}

/* Utility Classes
   ==================== */

.wrapper {
    width        : 100%;
    max-width    : 1440px;
    margin-right : auto;
    margin-left  : auto;
}

.slider {
    overflow    : hidden;
    max-width   : 1440px;
    white-space : nowrap;
}

.slick-list:after,
.slick-track:after {
    display : table;
    clear   : both;
    content : '';
}

.slide {
    display          : inline-flex;
    float            : left;
    overflow         : hidden;
    flex-direction   : row;
    flex-wrap        : wrap;
    -webkit-user-select      : none;
       -moz-user-select      : none;
        -ms-user-select      : none;
            user-select      : none;
    white-space      : normal;
    /*border-radius    : 11px;*/
    background-color : #FFFFFF;
    box-shadow       : 0 0 10px 0 lightgray;
}

.featured {
    padding : 16px 0;
}

.featured__title {
    font-weight    : 700;
    width          : 75%;
    margin-left    : auto;
    text-transform : uppercase;
    border-bottom  : 2px solid;
}

.popup {
    position         : fixed;
    top              : 0;
    right            : 0;
    bottom           : 0;
    left             : 0;
    display          : flex;
    align-items      : flex-start;
    flex-wrap        : wrap;
    justify-content  : center;
    width            : 80%;
    max-width        : 1000px;
    height           : 80%;
    max-height       : 1000px;
    margin           : auto;
    background-color : rgba(0, 0, 0, 0.5);
}

.popup__functions {
    display         : flex;
    align-items     : center;
    justify-content : space-between;
    width           : 100%;
    padding         : 16px 24px;
}

.popup__functions li + li {
    margin-left : 8px;
}

.popup__controls button {
    display     : block;
    margin-left : auto;
}

.popup__image-frame {
    display         : flex;
    overflow        : auto;
    align-items     : center;
    justify-content : center;
    width           : 80%;
    height          : 80%;
}

.popup__video-frame {
    display         : flex;
    align-items     : center;
    justify-content : center;
    width           : 100%;
    height          : 100%;
}

.popup__image-frame img {
    /*width     : 100%;*/
    max-width : none;
    height    : auto;
}

.spinner {
    display : none;
}

.spinner svg {
    -webkit-animation : spin 2s linear infinite;
    animation         : spin 2s linear infinite;
}

@-webkit-keyframes spin {
    100% {
        transform : rotate(360deg);
    }
}

@keyframes spin {
    100% {
        transform : rotate(360deg);
    }
}

@-webkit-keyframes pulse {
    0% {
        transform  : scale(0.95);
        box-shadow : 0 0 0 0 rgba(255, 255, 255, 0.85);
    }

    70% {
        transform  : scale(1);
        box-shadow : 0 0 0 8px rgba(0, 0, 0, 0);
    }

    100% {
        transform  : scale(0.95);
        box-shadow : 0 0 0 0 rgba(0, 0, 0, 0);
    }
}

@keyframes pulse {
    0% {
        transform  : scale(0.95);
        box-shadow : 0 0 0 0 rgba(255, 255, 255, 0.85);
    }

    70% {
        transform  : scale(1);
        box-shadow : 0 0 0 8px rgba(0, 0, 0, 0);
    }

    100% {
        transform  : scale(0.95);
        box-shadow : 0 0 0 0 rgba(0, 0, 0, 0);
    }
}

@-webkit-keyframes slideTop {
    0% {
        transform : translateY(-120%);
    }

    100% {
        transform : translateY(0%);
    }
}

@keyframes slideTop {
    0% {
        transform : translateY(-120%);
    }

    100% {
        transform : translateY(0%);
    }
}

/* Media Query Classes
   ==================== */

@media only screen and (max-width : 576px) {
    #home .testimonial {
        height : auto;
    }

    #home .testimonial.endoscopy {
        background : linear-gradient(to top, rgba(255, 255, 255, 0), 60%, #FFFFFF);
    }

    .shop__products__content {
        align-content  : center;
        flex-direction : column;
    }

    #modal .third-width,
    #modal .half-width {
        width: 100% !important;
    }

    #modal .modal__box {
        height: 100%;
        border-radius: 0;
        margin: auto;
    }
}

@media only screen and (max-width : 767px) {
    #contact .contact-box, #about .fact-box {
        height : unset;
    }

    .shop__products__content {
        justify-content : space-around;
    }

    .product-card__image a {
        width : 90%;
    }

    #home .hero::before {
        opacity : 0.5;
    }

    .menu.cart__menu.is-open li:nth-child(3) {
        margin-top : 24px;
    }

    .shopping-cart-item__image {
        -ms-grid-row-align : unset;
            align-self : unset;
    }

    section#auctions .product-categories {
        width : 90%;
    }

    #checkout .shipping-personal-info {
        flex-direction : column;
        align-items    : center;
    }

    .auctions__show {
        width : 90%;
    }

    #auctions .shipping__details {
        margin-top : 5vh;
    }
}

@media only screen and (max-width : 1024px) {
    #home .testimonial.endoscopy {
        padding : 8px;
    }

    #contact .additional-box {
        min-height : unset;
    }
}

@media only screen and (min-width : 375px) {
    #bid__checkout label[for=card_expiry] {
        margin-right : 16px;
        width        : 50%;
    }

    #bid__checkout label[for=card_cvc] {
        width : calc(50% - 16px);
    }
}

@media only screen and (min-width : 768px) {
    form.primary {
        height        : auto;
        padding       : 16px 32px;
        /*border-radius : 11px;*/
    }

    .header__logo {
        width : auto;
    }

    .header__logo img.mobile {
        display : none;
    }

    .header__logo img.desktop {
        display : block;
    }

    .header__nav li + li {
        margin-left : 16px;
    }

    .featured__title {
        font-size : 20px;
        width     : 50%;
    }

    .part {
        -ms-grid-rows  : -webkit-max-content;
        -ms-grid-rows  : max-content;
        -ms-grid-columns  : 10% 50% 10% 10% 10% 10%;
            grid-template : 'item name price quantity total functions' -webkit-max-content / 10% 50% 10% 10% 10% 10%;
            grid-template : 'item name price quantity total functions' max-content / 10% 50% 10% 10% 10% 10%;
    }

    .part > * {
        align-self : flex-start;
    }

    .part-header {
        display : -ms-grid;
        display : grid;
    }

    .shopping-cart-item {
        -ms-grid-rows  : -webkit-max-content -webkit-max-content -webkit-max-content -webkit-max-content;
        -ms-grid-rows  : max-content max-content max-content max-content;
        -ms-grid-columns  : -webkit-max-content 1fr;
        -ms-grid-columns  : max-content 1fr;
            grid-template :
            'cart-image cart-name' -webkit-max-content
            'cart-image cart-header' -webkit-max-content
            'cart-image cart-parts' -webkit-max-content
            'cart-buttons cart-footer' -webkit-max-content / -webkit-max-content 1fr;
            grid-template :
            'cart-image cart-name' max-content
            'cart-image cart-header' max-content
            'cart-image cart-parts' max-content
            'cart-buttons cart-footer' max-content / max-content 1fr;
    }

    .shopping-cart-item__parts {
        justify-content : space-between;
    }

    .shopping-cart-item__image {
        height        : 150px;
        padding-right : 24px;
    }

    .shopping-cart-item__image img {
        height : auto;
        margin : 0;
    }

    .shopping-cart-item__parts {
        padding : 5px 0;
    }

    #home .hero__title, #home .hero__subtitle,
    #about .hero__title, #about .hero__subtitle {
        -webkit-animation : 2.5s ease-out 0s slideTop;
                animation : 2.5s ease-out 0s slideTop;
    }

    #auctions form {
        flex-direction  : row;
        justify-content : space-between;
    }

    #auctions .auction__info,
    #auctions .shipping__details {
        width : 45%;
    }

    .part > .product-card__name {
        -ms-grid-row     : 1;
        -ms-grid-column     : 2;
        -ms-grid-column-span     : 1;
    }

    .part > .product__name {
        -ms-grid-row : 1;
        -ms-grid-column : 2;
        -ms-grid-column-span : 1;
    }

    .part__item {
        -ms-grid-row  : 1;
        -ms-grid-column  : 1;
    }

    .part > .part__name {
        -ms-grid-row       : 1;
        -ms-grid-column       : 2;
        -ms-grid-column-span       : 1;
    }

    .part__quantity {
        -ms-grid-row : 1;
        -ms-grid-column : 4;
    }

    .part__price {
        -ms-grid-row : 1;
        -ms-grid-column : 3;
    }

    .part__total {
        -ms-grid-row : 1;
        -ms-grid-column : 5;
    }

    .part__functions {
        -ms-grid-row : 1;
        -ms-grid-column : 6;
    }

    .part > .cart-item__name {
        -ms-grid-row  : 1;
        -ms-grid-column  : 2;
        -ms-grid-column-span  : 1;
    }

    .cart-item__price {
        -ms-grid-row  : 1;
        -ms-grid-column  : 3;
    }

    .cart-item__quantity {
        -ms-grid-row  : 1;
        -ms-grid-column  : 4;
    }

    .shopping-cart-item__image {
        -ms-grid-row       : 1;
        -ms-grid-row-span       : 3;
        -ms-grid-column       : 1;
    }

    .shopping-cart-item__name {
        -ms-grid-row      : 1;
        -ms-grid-column      : 2;
    }

    .shopping-cart-item__header {
        -ms-grid-row : 2;
        -ms-grid-column : 2;
    }

    .shopping-cart-item__parts {
        -ms-grid-row : 3;
        -ms-grid-column : 2;
    }

    .shopping-cart-item__footer {
        -ms-grid-row  : 4;
        -ms-grid-column  : 2;
    }

    .shopping-cart-item__parts--buttons {
        -ms-grid-row       : 4;
        -ms-grid-column       : 1;
    }
}

@media only screen and (min-width : 992px) {
    #home .hero {
        box-sizing    : content-box;
        height        : 500px;
        border-bottom : 0 solid #256CAF;
    }

    #home .featured-vendors .vendor {
        width  : 200px;
        height : 130px;
        margin : 30px;
    }

    .testimonial {
        width  : calc(50% - 60px);
        margin : 30px;
    }

    .shopping-cart-item__parts > * {
        align-items     : flex-start;
        flex-direction  : column;
        justify-content : flex-start;
        width           : auto;
    }

    .shopping-cart-item__parts--name {
        width : 55%;
    }

    .shopping-cart-item__parts--quantity,
    .shopping-cart-item__parts--price {
        width : 15%;
    }

    .shopping-cart-item__parts--buttons {
        width : 15%;
    }

    .shopping-cart-item__parts--buttons button {
        width : 100%;
    }

    .shopping-cart-item__parts--buttons button + button {
        margin-top  : 8px;
        margin-left : 0;
    }

    .cart-summary {
        max-width : 400px;
    }
}

@media only screen and (min-width : 1024px) {
    header .header {
        -ms-grid-rows  : -webkit-max-content;
        -ms-grid-rows  : max-content;
        -ms-grid-columns  : -webkit-max-content 1fr -webkit-max-content;
        -ms-grid-columns  : max-content 1fr max-content;
            grid-template : 'logo search nav' -webkit-max-content / -webkit-max-content 1fr -webkit-max-content;
            grid-template : 'logo search nav' max-content / max-content 1fr max-content;
        padding       : 16px 24px;
    }

    .header .cart {
        position : relative;
    }

    .header__logo {
        margin : 0;
    }

    .header__search {
        -ms-grid-row-align       : center;
            align-self       : center;
        margin-right     : 6%;
        margin-left      : 6%;
        padding          : 0;
        border           : 2px solid #424242;
        background-color : transparent;
    }

    .header__nav li.desktop {
        display : inline-block;
    }

    .header__nav li.mobile {
        display : none;
    }

    .header .toggle-menu__icon {
        display : none;
    }

    .header .toggle-menu__title {
        display : inline-block;
    }


    .footer {
        -ms-grid-rows  : 1fr;
        -ms-grid-columns  : 1fr 1fr 1fr 1fr;
            grid-template : 'logo info about links' 1fr / 1fr 1fr 1fr 1fr;
    }

    .footer__logo {
        display  : flex;
        overflow : hidden;
        /*height   : 145px;*/
    }

    .footer__info,
    .footer__about,
    .footer__links {
        align-items     : center;
        justify-content : center;
    }

    .featured__title {
        width : 30%;
    }

    .shop {
        padding : 16px 32px;
    }


    .shop__filters {
        flex-direction : column;
        width          : 20%;
    }

    .shop__filters .category,
    .shop__filters .vendor {
        width : 100%;
    }

    .shop__filters .category__list,
    .shop__filters .vendor__list {
        overflow    : auto;
        width       : calc(100% - 10px);
        height      : auto;
        max-height  : 500px;
    }

    .shop__filters .vendor__list {
        margin-left : 10px;
    }

    .shop__products {
        width : 80%;
    }

    .product-card {
        -ms-grid-rows  : 150px 1fr 1fr -webkit-max-content;
        -ms-grid-rows  : 150px 1fr 1fr max-content;
        -ms-grid-columns  : 200px;
            grid-template : 'image' 150px
                        'name' 1fr
                        'vendor' 1fr
                        'button' -webkit-max-content / 200px;
            grid-template : 'image' 150px
                        'name' 1fr
                        'vendor' 1fr
                        'button' max-content / 200px;
        width         : auto;
        max-width     : none;
    }

    .product-card__image {
        width : 100%;
    }

    .product-card__name a {
        white-space : normal;
    }

    .product__controls {
        justify-content : flex-end;
    }

    .product__controls li + li {
        margin-left : 8px;
    }

    .product {
        -ms-grid-rows  : -webkit-max-content -webkit-max-content -webkit-max-content -webkit-max-content;
        -ms-grid-rows  : max-content max-content max-content max-content;
        -ms-grid-columns  : 300px 1fr;
            grid-template : 'image name' -webkit-max-content
                        'image vendor' -webkit-max-content
                        'image category' -webkit-max-content
                        'image description' -webkit-max-content / 300px 1fr;
            grid-template : 'image name' max-content
                        'image vendor' max-content
                        'image category' max-content
                        'image description' max-content / 300px 1fr;
    }

    .product__image {
        align-items  : flex-start;
        margin-right : 24px;
    }

    .product__assets {
        flex-direction : row;
        width          : 100%;
    }

    .part__functions button span {
        display : inline-block;
    }

    .pagination__controls li {
        display : inline-block;
    }

    #home .testimonial.endoscopy .testimonial__content {
        width : 60%;
    }

    #contact .hero,
    #about .hero {
        height : 625px;
    }

    #contact .hero > * {
        width : 60%;
    }

    #about .hero__paragraph {
        width : 60%;
    }

    #about .hero__paragraph span {
        margin-top : 50px;
    }

    #cart {

    }

    #checkout {
        flex-direction : row;
    }

    #checkout .checkout__details {
        width : 70%;
    }

    /*
    #checkout .checkout__details h1,
    #checkout .checkout__details form {
        margin : 0;
    }
    */

    /*
    #checkout .checkout__totals {
        width : 30%;
    }
    */

    #admin #order-edit form > div {
        width : calc(50% - 40px);
    }

    .footer {
        align-items : center;
    }

    .header__search label select {
        min-width: 80px;
        font-size: 11px;
    }

    .header__search-text {
        display: none;
    }

    .header__search-icon {
        display: inline-block;
    }
    header .header > .header__logo {
        -ms-grid-row     : 1;
        -ms-grid-column     : 1;
    }
    header .header > .header__search {
        -ms-grid-row        : 1;
        -ms-grid-column        : 2;
        -ms-grid-column-span        : 1;
    }
    header .header > .header__nav {
        -ms-grid-row  : 1;
        -ms-grid-column  : 3;
    }
    header .header > .footer__logo {
        -ms-grid-row       : 1;
        -ms-grid-column       : 1;
    }


    .footer__info {
        -ms-grid-row       : 1;
        -ms-grid-column       : 2;
        -ms-grid-column-span       : 1;
    }


    .footer__about {
        -ms-grid-row      : 1;
        -ms-grid-column      : 3;
    }


    .footer__links {
        -ms-grid-row      : 1;
        -ms-grid-column      : 4;
    }

    .product-card__image {
        -ms-grid-row : 1;
        -ms-grid-row-span : 1;
        -ms-grid-column : 1;
    }

    .product > .product-card__image {
        -ms-grid-row : 1;
        -ms-grid-row-span : 4;
        -ms-grid-column : 1;
    }

    .product-card__name {
        -ms-grid-row     : 2;
        -ms-grid-column     : 1;
        -ms-grid-column-span     : 1;
    }

    .product > .product-card__name {
        -ms-grid-row     : 1;
        -ms-grid-column     : 2;
        -ms-grid-column-span     : 1;
    }

    .product-card__vendor {
        -ms-grid-row : 3;
        -ms-grid-column : 1;
    }

    .product > .product-card__vendor {
        -ms-grid-row : 2;
        -ms-grid-column : 2;
    }

    .product-card__button {
        -ms-grid-row   : 4;
        -ms-grid-column   : 1;
    }

    .product__image {
        -ms-grid-row       : 1;
        -ms-grid-row-span       : 1;
        -ms-grid-column       : 1;
    }

    .product > .product__image {
        -ms-grid-row       : 1;
        -ms-grid-row-span       : 4;
        -ms-grid-column       : 1;
    }

    .product__name {
        -ms-grid-row : 2;
        -ms-grid-column : 1;
        -ms-grid-column-span : 1;
    }

    .product > .product__name {
        -ms-grid-row : 1;
        -ms-grid-column : 2;
        -ms-grid-column-span : 1;
    }

    .vendor__name {
        -ms-grid-row : 3;
        -ms-grid-column : 1;
    }

    .product > .vendor__name {
        -ms-grid-row : 2;
        -ms-grid-column : 2;
    }

    .product__category {
        -ms-grid-row : 3;
        -ms-grid-column : 2;
    }

    .product__description {
        -ms-grid-row : 4;
        -ms-grid-column : 2;
    }

    .part__name {
        -ms-grid-row       : 2;
        -ms-grid-column       : 1;
        -ms-grid-column-span       : 1;
    }

    .product > .part__name {
        -ms-grid-row       : 1;
        -ms-grid-column       : 2;
        -ms-grid-column-span       : 1;
    }

    .cart-item__image {
        -ms-grid-row        : 1;
        -ms-grid-row-span        : 1;
        -ms-grid-column        : 1;
    }

    .product > .cart-item__image {
        -ms-grid-row        : 1;
        -ms-grid-row-span        : 4;
        -ms-grid-column        : 1;
    }

    .cart-item__name {
        -ms-grid-row  : 2;
        -ms-grid-column  : 1;
        -ms-grid-column-span  : 1;
    }

    .product > .cart-item__name {
        -ms-grid-row  : 1;
        -ms-grid-column  : 2;
        -ms-grid-column-span  : 1;
    }
}

@media only screen and (min-width : 1200px) {
    .header__search-text {
        display: inline-block;
    }

    .header__search-icon {
        display: none;
    }

    .header__search label select {
        min-width: 100px;
        font-size: 14px;
    }
}

@media only screen and (min-width : 1400px) {
    /*  */
}

