@import url('https://fonts.googleapis.com/css2?family=Montserrat+Alternates:wght@400;500;600;700&display=swap');
:root{
    --black: #333333;
    --green: #403535;
    --green-light: #534646;
    --light-grey: #F2F2F2;
    --red: #F4042A;
    --grey: #999999;
    --white: #fff;

    --shadow: 6px 6px 20px rgba(0, 0, 0, 0.08);
}

body{
    font-family: "Montserrat Alternates", sans-serif;
    min-height: 100vh!important;
    display: flex!important;
    flex-direction: column!important;
    color: var(--black);
    text-rendering: optimizeLegibility;
}
body>.wrapper{
    flex: 1;
}
a{
    transition: color 0.3s;
    text-decoration: none;
    color: var(--green);
}
a:hover{
    color: var(--green-light);

}

header{
    background: var(--white);
    box-shadow: 0 0 24px rgba(0,0,0,0.15);
}
.header_center{
    display: flex;
    align-items: center;
    flex-grow: 1;
}
.header_phone{
    font-weight: bold;
     color: var(--black);
}
.header_whatsapp{
    display: flex;
    align-items: center;
    gap: 10px;
    transition: opacity 0.3s;
    font-size: 14px;
    font-weight: 600;
}
.header_whatsapp:hover{
   opacity: 0.8;
}
.header_workhours{
    font-size: 14px;
}
.header_workhours span{
    color: var(--grey);
}
.v_sep{
    background-color: #cccccc;
    width: 1px;
    height: 26px;
}

.header_cart{
    text-align: right;
    font-size: 14px;
}
.header_cart_btn{
    transition: opacity 0.3s;
    padding: 0;
    font-weight: 600;
    color: var(--green);
}
.header_cart_btn:hover{
    opacity: 0.8;
}


.h1_banner{
    margin-top: 40px;
    background-image: url("../images/banner.jpg");
    background-size: cover;
    background-position: bottom;
    text-align: center;
    padding: 16px;
}
.h1_banner h1{
    color: var(--white);
}


.h1_banner span{
    display: block;


    font-weight: bold;
    color: var(--white);
    line-height: 1.56;
}

h1{
    font-weight: bold;
}

h2.h-chevron{
    margin-top: 56px;
}

.h-chevron a{
    padding-right: 32px;
    background-image: url("../images/chevron-right-link.svg");
    background-repeat: no-repeat;
    background-position: right center;
}

.product-grid{
    display: grid;
}

.prod-el{
    background-color: var(--white);
    box-shadow: 0px 0px 16px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 10px;
    padding: 10px 10px 16px;
    transition: opacity 0.3s ease-in-out;
    position: relative;
    border-radius: 5px;
}
.prod-el:after{
    content: '';
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    opacity: 0;
    top:0;
    left: 0;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    transition: opacity 0.3s ease-in-out;
    border-radius: 5px;
}

.prod-el:hover:after{
    opacity: 1;
}
.prod-card-row{
    display: flex;
    flex-direction: column;
    gap: 10px;
}

img.prod-img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    /* margin: 5px; */
}
.prod-name{
    font-weight: 600;
    font-size: 15px;
    text-align: center;
 }

.prod-el .description{
    font-size: small;
    white-space: pre-wrap;
}

.prod-price{
    font-size: 15px;
    text-align: center;
}

.prod-el .btn{
    min-height: 42px;
    min-width: 42px;
    background-repeat: no-repeat;
}

.btn-plus{
    background-image: url("../images/plus.svg");
    background-position: center;
    background-color: var(--light-grey);
}
.btn-plus:hover{
    background-color: var(--grey);
}
.btn-minus{
    background-image: url("../images/trash.svg");
    background-position: center;
    background-color: var(--light-grey);
}
.btn-minus:hover{
    background-color: var(--grey);
}

.prod-el .btn.btn-gotocart{
    min-height: 32px;
    min-width: 32px;
    background-image: url("../images/cart-check.svg");
    background-position: center;
    background-color: var(--green);
}
.prod-el .btn.btn-gotocart:hover{
    background-color: var(--green-light);
}

.btns2{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.prod-count{
    width: 32px;
    font-weight: 600;
    font-size: 15px;
    border: none;
    text-align: center;
}
.prod-count:focus,.prod-count:focus-visible{
    outline: none!important;
}

.btns1{
    display: flex;
    justify-content: center;
    align-items: center;
}

.btn.btn-cart-add{
    min-height: 42px;
    background-image: url("../images/cart-plus.svg");
    background-position: 10px center;
    background-color: var(--green);
    color: #ffffff;
    font-size: 15px;
    padding-left: 40px;
}
.btn.btn-cart-add:hover{
    background-color: var(--green-light);
}



h3{
    font-size: 20px;
    font-weight: 600;
}

label.form-check-label{
    font-size: 14px;
}

/*
input[type=checkbox] {
    position: relative;
    cursor: pointer;
}
input[type=checkbox]:before {
    content: "";
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    top: 0;
    left: 0;
    border: 2px solid #555555;
    border-radius: 3px;
    background-color: white;
}
input[type=checkbox]:checked:after {
    content: "";
    display: block;
    width: 5px;
    height: 10px;
    border: solid black;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 2px;
    left: 6px;
}

*/


.page-item{
    width: 42px;
    height: 42px;
    margin-right: 10px;
    background-color: var(--light-grey);
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;

}
.page-link{
    color: #000000;
    font-weight: 600;
}

.page-item.active{
    background-color: var(--green);
}

.page-item.active .page-link{
    color: #ffffff;
}

.page-item:hover{
    background-color: var(--green-light);
}
.page-item:hover a.page-link{
    color: #ffffff;
}

.page-item .page-link{
    display: flex;
    flex-grow: 1;
    height: 100%;
    align-items: center;
    justify-content: center;
}

.navbar-toggler{
    padding: 0;
    border: none;
}
.navbar-toggler:focus, .navbar-toggler:focus-visible{
    box-shadow:none;
}
.bg-body-green{
 background-color: var(--green);
    color: #fff;
}
.bg-body-green .nav-link{
    color: #fff;
    font-size: 18px;
    font-weight: 600;
}
.navbar-brand{
    padding: 0;
    margin: 0;
    width: 0;
}
.navbar-nav a{
    color: #fff;
    font-weight: bold;
}
section{
    margin-top: 60px;
}
.section-grey{
    background-color: #F2F2F2;
    padding: 60px 0;
}

.input-app{
    border: 2px #CCCCCC solid;
    border-radius: 6px;
    display: flex;
    align-items: center;
    padding: 4px 8px;
    margin-bottom: 14px;
}
.input-app input, .input-app textarea{
    border: none;
    margin-left: 6px;
    width: 100%;
}
.input-app *:focus-visible, .input-app *:focus{
    border: none;
    outline: none!important;
}

button.btn-send{
    background-color: var(--green-light);
    color: #fff;
    font-weight: 400;
    padding: 8px 54px;
    border: 2px var(--green) solid;
}
button.btn-send:hover{
    background-color: var(--green);
    color: #fff;
}

footer{
    margin-top: 40px;
    background: var(--green);
    padding: 24px 0;
    color: var(--white);
}

.copyright{
    margin-top: 12px;
    font-size: 14px;
    opacity: 0.7;
}

footer .header_phone, footer .header_whatsapp, footer .header_workhours span{
    color: #fff;
}

footer .header_workhours{
    text-align: right;
}


hr.dashed{
    border-color: #cccccc;
    border-width: 1px;
    border-style: dashed;
    margin: 24px 0;
    opacity: 1;
}
.modal-header{
    border: none;
    padding-bottom: 0;
}
h2{
    margin-top: 0;
}
h2.modal-title{
    margin: 0;
}
table.order-items{
    width: 100%;
    font-size: 14px;
}
.order_sum{
    margin-top: 8px;
    text-align: right;
    font-size: 14px;
}
.order_sum span{
    font-weight: bold;
}

table.order-items tr td{
    padding: 0 4px;
    vertical-align: top;
}
table.order-items tr td:first-child{
    padding-left: 0;
}

table.order-items tr td:last-child{
    padding-right: 0;
}
table.order-items tr td:nth-child(2), table.order-items tr td:nth-child(3){
    white-space: nowrap;
}
table.order-items tr td:nth-child(3){
    text-align: right;
}

.btn-send-order{
    background-color: var(--green);
    color: #fff;
    padding: 8px 42px;
    font-weight: 500;
    border-radius: 6px;
}

.btn-send-order:hover{
    background-color: var(--green-light);
    color: #fff;
}

header a.modal-link{
    color: var(--green);
    border-color: var(--green);
}

footer a.modal-link{
    color: #ffffff;
    border-color: #ffffff;
}

a.modal-link{
    color: #ffffff;
    border-bottom-style: dashed;
    border-bottom-width: 1px;
}

ul.footer-menu{
    list-style: none;
    margin: 0;
    padding: 0;

}
ul.footer-menu li{
    padding: 4px 0;
}
ul.footer-menu li a{
    color: #ffffff;
    opacity: 1;
    transition: opacity 0.3s;
}

ul.footer-menu li a:hover{
    opacity: 0.6;
}

.inc-btn, .dec-btn{
    cursor: pointer;
    padding: 8px;
    font-weight: bold;
    font-size: 16px;
}

.banner{
    margin-top: 20px;
    padding: 36px;
    background-size: cover;
}
.banner1{
    background-image:url(/images/banner.jpg);
}
.banner-title{
    font-size: 44px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    text-shadow: 0px 4px 4px rgba(0,0,0,0.4);
}
.banner-features{
    display: block;
    justify-content: space-around;
    margin-top: 16px;
}
.banner-feature{
    margin-top: 12px;
    background: #fff;
    padding: 20px 16px;
    border-radius: 14px;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: var(--green);
}
.banner-btn{
    margin-top: 28px;
    text-align: center;
    display: inline-block;
    padding: 12px 64px;
    color: #fff;
    background: var(--green);
    border-radius: 60px;
    font-size: 18px;
    font-weight: 600;
    transition: opacity 0.3s;
}
.banner-btn:hover{
    color: #fff;
    opacity: 0.9;
}
.center{
    text-align: center;
}