﻿html {
    scroll-behavior: smooth;
}

body {
    display: flex; 
    flex-direction: column; 
    justify-content: space-between;
    margin: 0;
    min-height: 100vh;
    /* font-family: Ubuntu, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; */
}

.font-size-fluid {
    font-size: 5vw;
}

.bg-black {
    background-color: #000 !important;
}

@media screen and (min-width: 576px) {
    .font-size-fluid {
        font-size: 30px;
    }
}


._12px {
    font-size: 12px;
}
._13px {
    font-size: 13px;
}
._14px {
    font-size: 14px;
}
._15px {
    font-size: 15px;
}
._16px {
    font-size: 16px;
}
._17px {
    font-size: 17px;
}
._18px {
    font-size: 18px;
}
._19px {
    font-size: 19px;
}
._20px {
    font-size: 20px;
}

.category-img {
    mix-blend-mode: multiply;
}


.header-row div.align-middle {
    line-height: 5rem;
}

.navbar-brand.h1 {
    font-size: 2rem;
    margin-bottom: 0;
    line-height: 2rem;
    vertical-align: middle
}

/*.navbar-brand img {
    max-height: 12rem;
    max-width: 12rem;
}
*/
img.img-brand[src=""], img.img-brand:not([src]) {
    display: none;
}

@media (max-width: 991.98px) {
    .navbar-brand img {
        width: auto !important;
        height: auto !important;
        max-height: 3rem !important;
    }
}
@media (min-width: 576px) {
    .navbar-brand img {
        /*width: auto !important;
        height: auto !important;
        max-height: none !important;*/
    }
}
@media (max-width: 576px) {
    .navbar {
        padding-left: 0;
        padding-right: 0;
    }
}

.img-cover {
    object-fit: cover !important;
    width: 100%;
}

.img-contain {
    object-fit: contain !important;
    width: 100%;
}

.carousel-image {
    min-height: 30vh;
    max-height: 50vh;
    object-fit: cover;
}

.carousel-caption {
    height: 50vh;
    top: 0;
    text-align: unset;
}

.product-card .card-img-top {
    object-fit: contain;
    object-position: center center;
    height: 20rem;
}

.product-card .no-gutters .card-img-top {
    height: 15rem;
}

.product-card .card-title {
    line-height: 1.5rem;
    min-height: 4.5rem;
    display: block;
}

.product-card .no-gutters .card-title {
    min-height: unset;
    font-weight: bold;
}

.price {
    white-space: nowrap;
    font-size: 1.5rem;
    text-align: right;
    font-weight: bold;
}

.price.col-form-label-lg {
    height: 3rem !important;
    line-height: 3rem !important;
    padding: 0;
}

.price-label {
    white-space: nowrap;
    font-size: 1.5rem;
    text-align: left;
}

.card-text.price del {
    font-size: 1.25rem;
}

.breadcrumb-item + .breadcrumb-item::before {
    content: '\f105';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900
}

.cart td {
    vertical-align: top;
}

.cart img {
    object-fit: contain;
    object-position: center center;
    width: 100%;
    height: 12rem;
}

.cart-price {
    white-space: nowrap;
    text-align: right;
}


.g-recaptcha {
    display: inline-block;
}

.w-20 {
    width: 20%;
}

.text-section img {
    /* margin-bottom: 1.5rem; */
}

.text-section img[style*="float: left"],
div.embed-responsive[style*="float: left"] {
    margin-right: 1.5rem;
}

.text-section img[style*="float: right"],
div.embed-responsive[style*="float: right"] {
    margin-left: 1.5rem;
}

.navbar {
    border: 0;
}

.cart-quantity {
    flex-wrap: nowrap;
}

.cart-quantity button,
.cart-quantity input.quantity,
#add-to-cart-form button,
#add-to-cart-form input.quantity {
    height: 3rem !important;
}

p:last-child {
    margin-bottom: 0;
}

.semi-transparent {
    opacity: 0.5;
}

.border-dashed {
    border-style: dashed !important;
}

.border-dotted {
    border-style: dotted !important;
}

.border-top-dashed {
    border-top-style: dashed !important;
}

.border-top-dotted {
    border-top-style: dotted !important;
}

.border-bottom-dashed {
    border-bottom-style: dashed !important;
}

.border-bottom-dotted {
    border-bottom-style: dotted !important;
}

.border-hidden {
    border-style: solid !important;
    border-color: transparent !important;
}

.text-danger.field-validation-error {
    font-size: 0.75rem;
    font-weight: bold;
}

dl.row dt {
    white-space: nowrap;
    font-weight: normal;
    opacity: 0.8;
}

dd div {
    min-height: 1.75rem;
}

div.row[role=button]:hover {
    background-color: rgba(0,0,0,0.05);
}

.item-image-placeholder {
    width: 112px;
}

.item-image {
    width: 112px;
    height: 112px;
    object-fit: contain;
}

.btn-flag img {
    width: 24px;
}

.bootstrap-datetimepicker-widget table td.day {
    width: 30px;
}

.bootstrap-datetimepicker-widget.dropdown-menu {
    width: 20rem;
}

.text-section.clearfix p:last-child {
    margin-bottom: 0 !important;
}

#cart-container img {
    object-fit: contain;
}

.autocomplete-suggestions .media img {
    max-width: 5rem;
    max-height: 5rem;
}

.dropdown-hover:hover > .dropdown-menu {
    display: block;
}

.dropdown-hover > .dropdown-toggle:active {
    /* Without this, clicking will make it sticky */
    pointer-events: none;
}

.dropdown-hover a.dropdown-item {
    overflow: hidden;
    text-overflow: ellipsis;
}

.navbar-text p {
    margin: 0;
}

.navbar-item {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
}
.navbar-item:first-child {
    margin-left: 0;
}
.navbar-item:last-child {
    margin-right: 0;
}

@media (max-width: 991.98px) {
    .nav-lg-justified > .nav-link,
    .nav-lg-justified .nav-item {
        text-align: left;
    }
    .navbar-item {
        margin-left: 0;
        margin-right: 0;
    }
}

.list-group img {
    object-fit: cover;
}

.d-hidden {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s, opacity 0.5s linear;
}

.d-hover-visible:hover, label:hover .d-hover-visible {
    visibility: visible;
    opacity: 1;
}

.carousel-item {
    text-shadow: 1px 1px 3px darkslategrey;
}

.payment-provider-icon {
    width: 64px;
    height: 64px;
    object-fit: contain
}

@media (min-width: 768px) {
    .border-md-0 {
        border: 0 !important;
    }
    .border-md-left-0 {
        border-left: 0 !important;
    }
    .border-md-right-0 {
        border-right: 0 !important;
    }
    .border-md-top-0 {
        border-top: 0 !important;
    }
    .border-md-bottom-0 {
        border-bottom: 0 !important;
    }
}