@import url("settings.css");
@import url("font.css");
@import url("banner.css");
@import url("menu.css");
@import url("search.css");
@import url("content.css");
@import url("button.css");
@import url("productcard.css");
@import url("popup.css");
@import url("footer.css");
@import url("category.css");
@import url("checkbox.css");
@import url("slider.css");
@import url("selectbox.css");
@import url("productdetail.css");
@import url("zoom.css");
@import url("cart.css");
@import url("spinner.css");
@import url("thanks.css");
@import url("blog.css");
@import url("shopper.css");
@import url("login.css");
@import url("media_screen.css");
@import url("map.css");

/* import only if round template is selected */
 @import url("template_round.css"); 

html, body {
    margin: 0;
    padding: 0;
    z-index: 0;
    position: relative;
    width: 100%;
}

html {
    overflow-y: scroll;
}

body {
    background-color: white;
    overflow-x: hidden;
    height: 100%;
    overflow-y: hidden;
    min-height: 100vh;
    /*
    background-image: url("background.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    */
}

body.show-up {
    padding-top: 82px;
}

/*
body::before {
    content: "";
    position: absolute;
    left: -500%;
    top: -500%;
    width: 1000%;
    height: 1000%;
    opacity: 0.08;
    background-image: url(../../logo.png);
    background-repeat: repeat;
    background-size: 130px;
    transform: rotate(45deg);
    overflow: hidden;
    z-index: -2;
}
*/

* {
    position: relative;
    outline: none;
}

p, u, i, h1, h2, h3, span, label, button {
    cursor: default;
}

.template-common {
    display: none!important;
}

.error-input {
    border: 1px solid red;
    background-color: #ffcccb;
}

.product-label {
    background-color: var(--color-main);
    color: white;
    border-radius: 5px;
    font-weight: bold;
    padding: 8px 16px;
    font-size: 14px;
    margin-right: 10px;
    margin-top: 4px;
    display: inline-block;
    text-align: center;
}

.product-label::before {
    content: "";
}

.stock-not-available, .stock-available {
    background-color: white;
    color: black;
    border-radius: 50px;
    font-weight: bold;
    font-size: 14px;
    display: block;
}

.stock-not-available {
    color: #3f3f3f;
}

.free-delivery-notice {
    background-color: #CFE7CF;
    color: black;
    border-radius: 50px;
    font-weight: bold;
    padding: 8px 16px;
    font-size: 14px;
    margin-right: 10px;
    margin-top: 4px;
}

.no-vat {
    display: none;
}

.homepage-content, .category-content, .cart-template, .product-content, .textpage-content {
    background-color: white;
}

.textpage-content {
    min-height: 66vh;
    padding-top: 100px;
    max-width: 70%;
    margin: 0px auto;
}

/*
.textpage-content::before {
    content: "";
    position: absolute;
    left: -500%;
    top: -500%;
    width: 1000%;
    height: 1000%;
    opacity: 0.03;
    background-image: url(../../logo.png);
    background-repeat: repeat;
    background-size: 130px;
    transform: rotate(45deg);
    overflow: hidden;
}
*/
.textpage-content p.-wm-MsoNormal {
    background-color: transparent !important;
}

.gmap_iframe {
    height: 300px;
}

.input-invalid {
    border-bottom: 1px solid red!important;
    background-color: #FFE5E5;
}

.homepage-content {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.error-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 50px;
}

.error-content::before {
    content: "";
    display: block;
    width: 100%;
    height: 200px;
    max-width: 400px;
    max-height: 200px;
    background-image: url('/logo.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.error-content a {
    color: white;
    font-weight: bolder;
    background-image: none;
    background-color: var(--color-main);
}

.error-content a:hover {
    background-color: var(--color-main-reverse);
}

.error-content img {
    display: none;
}

@media only screen and (max-width: 922px) {
    .homepage-content {
        grid-template-areas: 
            "slider"
            "brewing"
            "newsletter";
        grid-template-columns: 100%;
        row-gap: 10px;
    }
}

@media only screen and (max-width: 480px) {
    .error-content::before {
        max-width: 350px;
    }
}