@import 'fonts.css';

:root {
  --black: #111111;
  --black-10: rgba(17, 17, 17, .1);
  --meta: #999;
  --muted: #EEEEEE;
  --white: #fff;
  --font-weight-light: 300;
  --font-weight-medium: 500;
}

/* UI */
* {
  box-sizing: border-box;
}


.uk-text-small {
  /* font-weight: 300; */
}

.c-overflow-scroll .el-item .uk-position-center {
  height: 100%;
  overflow-y: auto !important;
}

.uk-overlay-default {
  background: linear-gradient(180deg, rgba(17,17,17,0) 50%, rgba(17,17,17,1) 100%);
}

/* width */
::-webkit-scrollbar {
  width: 10px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #111;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #333;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #222;
}

@media(max-width: 960px){
  .s-footer .m-social > .uk-grid {
    justify-content: center;
  }
}


/* TOP */
.tm-header-overlay {
  z-index: 999;
}
.m-top > .uk-section {
  /*padding-top: 140px;
  padding-bottom: 70px;*/
  padding-top: 90px;
  padding-bottom: 40px;
  transition: all ease-out .3s;
}
.m-top.uk-active > .uk-section {
  padding-top: 70px;
  padding-bottom: 20px;
}

.uk-offcanvas-bar > div,
.uk-offcanvas-bar > div > div,
.uk-offcanvas-bar .m-dialog-mobile {
  flex: 1;
  display: flex;
}

.uk-offcanvas-bar .uk-navbar-nav {
  flex-direction: column;
    align-items: flex-start;
}

.uk-offcanvas-bar .uk-navbar-nav > li > a {
  min-height: 1.5rem;
  height: 1.5rem;
}

div.mod-languages li {
  margin: 0;
}
div.mod-languages a {
  padding: 0;
}

/* TABS */
.uk-subnav-pill > li > a,
.uk-subnav-pill > li > a:hover {
  border: 1px solid white !important;
  color: white !important;
  padding: 10px 40px !important;
  background: none !important;
}

.uk-subnav-pill > li.uk-active > a {
  background: white !important;
  color: var(--black) !important;
}

@media(max-width: 960px){
  .uk-subnav-pill {
    display: flex;
    flex-wrap: nowrap;
    overflow: auto;
  }
  .uk-subnav-pill > li > a {
    padding: 10px 30px !important;
  }
}




/* PRODUCTS */
.c-products-grid .el-item,
.c-products-grid .el-item > a.uk-panel {
  display: flex !important;
  flex-direction: column;
}

.c-products-grid .el-title,
.c-products-grid .el-meta {
  margin-bottom: 15px !important;
}

.c-products-grid .el-product-price1 {
  text-align: center;
  margin-top: auto !important;
}

.c-products-grid .el-product-price1 + div {
  margin: 0 !important;
}

.addtocart-area {
  margin: 0 !important;
}

.addtocart-button {
  width: 30px;
  height: 30px;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  font-size: 0;

}

.addtocart-button::before {
  content: "+";
  font-size: 1.125rem;
  font-weight: 500;
}

.c-products-grid .addtocart-button {
  position: absolute;
  right: 0;
  bottom: 0;
}
.c-products-grid .el-image {
  width: 280px;
  height: 280px;
  object-fit: contain;
}
@media(max-width: 640px){
  .c-products-grid .el-title,
  .c-products-grid .el-product-price1 {
    font-size: .875rem;
  }
}


/* FILTER */
.cf_flt_header {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  font-weight: var(--font-weight-medium);
  user-select: none;
}

.cf_flt_header .headexpand {
  background-size: 20px;
}

.cf_flt_wrapper:not(:first-child) {
  margin-top: 30px;
}
.cf_filters_list {
  margin-top: 15px;
}
.cf_filters_list li .cf_sel_opt {
  font-weight: var(--font-weight-medium);
}

.cf_filters_list .cf_flt {
  margin: 0;
  appearance: none;
  width: 10px;
  height: 10px;
  border: 1px solid var(--black);
  background-color: #fff;
  margin-right: 10px;
  flex: none;
}

.cf_filters_list li .cf_option {
  padding: 0;
  line-height: 1;
}

.cf_filters_list .cf_flt:checked {
  background-color: var(--black);
}

.cf_filters_list_li {
  position: relative;
}
.cf_filters_list_li input {
  pointer-events: none;
  position: absolute;
  left: 0;
  top: 5px;
}

.cf_filters_list_li label a,
.cf_filters_list_li label span.cf_disabled_opt  {
  padding-left: 20px !important;
}

.cf_flt_header_text {
  font-size: 1.5rem;
  line-height: 1;
  color: var(--black);
}

.cf_wrapper_input_text input[type="text"] {
  outline: none !important;
  border: none;
  border-bottom: 1px solid var(--black);
}

.cf_search_button {
  background: none;
  padding: 0;
  border: none;
}

a.cf_clear {
  display: block;
  width: 20px;
  height: 20px;
  font-size: 0;
  background: url(/images/icons/trash-black.svg) no-repeat;
}

#cf_wrapper_inner_price_122 {
  width: 100%;
}

#cf_wrapper_inner_price_122 .form-horizontal {
  display: flex;
  align-items: center;
  gap: 10px;
}

#cf_wrapper_inner_price_122 .form-horizontal br {
  display: none;
}

#cf_wrapper_inner_price_122 .form-horizontal .cf_search_button {
  margin-left: auto;
}

.cf_search_button {
  width: 50px;
  height: 40px;
  background: var(--muted);
  font-size: 1.125rem;
}

.cf_search_button::before {
  margin: 0 !important;
}

.cf_resetAll_link {
  display: block;
  margin-top: 30px;
  color: var(--meta);
}


/*FILTER SEARCH*/
.cf_wrapper_input_text {
    position: relative;
}

.cf_wrapper_input_text > .form-horizontal {
  display: flex;
    gap: 5px;
}
.cf_wrapper_input_text_1 input[type="search"] {
  	flex: 1;
    width: calc(100% - 50px);
    height: 40px;
    outline: none;
    padding-left: 10px;
  	border-width: 1px;
}
input[type="search"]::-webkit-clear-button {
  display: none !important;
}
input[type="search"]::-moz-search-clear-button {
  display: none !important;
}
#cf_wrapper_input_text_q_122 .cf_clear {
    /*position: absolute;
    right: 20px;
    top: 5px;*/
  	width: 50px;
    height: 40px;
    background-color: var(--muted);
    background-position: center;
}

#cf_wrapper_input_text_q_122 br {
  display: none;
}

/*TOGGLE CHAMPAGNE*/
#cf_flt_wrapper_custom_f_30_122 {
    display: none;
}
#cf_form_122:has(#cf_option_li_custom_f_13_122_elid313834 input:checked) #cf_flt_wrapper_custom_f_30_122 {
    display: block;
}
/*GASTRO COMBO*/
#cf-sort {
  margin-bottom: 0; 
}

#cf_flt_wrapper_custom_f_22_122,
#cf_flt_wrapper_custom_f_22_122 li {
  display: none;
}

#cf_flt_wrapper_custom_f_22_122:has(.cf_flt:checked),
#cf_flt_wrapper_custom_f_22_122 li:has(.cf_flt:checked) {
  display: block
}

/* CATEGOTY FILTER */
.m-category-filter .cf_flt_header,
/* .m-category-filter .cf_filters_list_li, */
.m-category-filter .cf_filters_list_li input,
.m-category-filter .cf_resetAll_link  {
  display: none;
}

#cf_option_li_virtuemart_category_id_123_elid1,
#cf_option_li_virtuemart_category_id_123_elid2,
#cf_option_li_virtuemart_category_id_123_elid4,
#cf_option_li_virtuemart_category_id_123_elid5 {
  display: block;
}

#cf_option_li_virtuemart_category_id_123_elid1 {
  order: -1;
}

.m-category-filter .cf_filters_list {
  margin: 0;
  display: flex;
  gap: 15px;
  justify-content: space-between;
}
.m-category-filter .cf_filters_list > li {
  flex: 1 1 auto;
}
.m-category-filter .cf_filters_list label a {
  display: block;
  text-align: center;
  padding: 0 10px !important;
  background: var(--muted);
	line-height: 40px;
}

.m-category-filter .cf_filters_list input:checked + label a {
  background: var(--black);
  color: var(--white);
}

.m-category-filter .cf_filters_list input:checked + label a {
  color: var(--white);
}


/* PRODUCTDETAILS */
fieldset {
  border: none;
  padding: 0;
  margin: 0;
}
.productdetails .manufacturer a {
  /*text-decoration: underline;*/
  display: inline-block;
  color: var(--black);
  border: 1px solid var(--black);
  padding: 10px 15px;
  margin-bottom: 10px;

}

.productdetails .manufacturer a:hover {
  color: var(--meta);
  border-color: var(--meta);
}

/* CART */
#cart-contents #allproducts {
  display: flex;
  flex-wrap: wrap;
  column-count: 3;
}

#cart-contents .product {
  text-align: center;
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

#cart-contents .product > .uk-clearfix {
  margin-bottom: 20px;
}
#cart-contents .product > .uk-h3 {
  margin-top: auto !important;
}

#cart-contents .product > .spacer {
  flex: 1;
  display: flex;
  flex-direction: column;
}

#cart-contents .product > .spacer > div:nth-child(1) {

}

#cart-contents .product > .spacer > div:nth-child(2) {
  flex: 1;
  display: flex;
  flex-direction: column;
}
#cart-contents .product .top-row {
  margin-bottom: 20px !important;
}
#cart-contents .product .bottom-row {
  margin-top: auto !important;
}
#cart-contents .product .removeproduct {
  position: absolute;
  top: 0;
  right: 0;
}

#cart-contents img.uk-thumbnail {
  height: 180px;
  object-fit: contain;
}

#cart-contents .vm-customfield-cart > span {
  display: block;
  font-size: 1rem;
  font-weight: var(--font-weight-medium);
  border-bottom: 1px solid var(--black-10);
  padding-bottom: 10px;
  margin-top: 10px;
  text-align: center;
}

#cart-contents .product .quantity > .spacer {
  display: flex;
  justify-content: center;
}

#cart-contents .product .quantity > .spacer .quantity-minus {
  order: -1;
}

#cart-contents .product .quantity-input {
  border: none;
}

#cart-contents .product .quantity-minus,
#cart-contents .product .quantity-plus {
  width: 30px;
  height: 30px;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  font-size: 0;
  background: var(--black);
}

#cart-contents .product .quantity-minus span,
#cart-contents .product .quantity-plus span {
  display: none;
}

#cart-contents .product .quantity-minus::before {
  content: "-";
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--white);
}

#cart-contents .product .quantity-plus::before {
  content: "+";
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--white);
}

#cart-contents .quantity {
  display: none;
}

.emptycart span.uk-icon {
  transform: translateY(-3px);
}
/* ADD TO CART POPUP */
#add_to_cart_popup.uk-open {
  overflow-y: scroll;
  /* display: flex !important; */
  padding-bottom: 0;
  /* padding-right: 21px; */
}

#add_to_cart_popup .uk-modal-dialog {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: center;
}

#add_to_cart_popup .uk-modal-dialog {
  margin-top: auto !important;
  margin-bottom: 0 !important;
  transform: translateY(100px);
  border-radius: 15px 15px 0 0;
}

#add_to_cart_popup.uk-open>.uk-modal-dialog {
  transform: translateY(0);
}

#add_to_cart_popup .uk-special-cartclose {
  display: none;
}

#add_to_cart_popup .uk-special-addtocart {
  float: none;
}

/* PROGRESS */
progress::-moz-progress-bar {background-color: var(--primary) !important;}
progress[value] {-webkit-appearance: none;}
progress[value]::-webkit-progress-value {background-color: var(--primary);}


/* CART MODULE */
.m-cart {
  width: auto;
}

.vmCartModule {
  position: relative;
}

.vmCartModule .total_products {
  display: block;
  width: 30px;
  text-align: center;
  position: absolute;
  top: 30px;
  left: calc(50% - 15px);
  font-size: 1.125rem;
  font-weight: var(--font-weight-medium);
  color: var(--white);
  pointer-events: none;
}

@media(min-width: 640px){
  .m-cart {
    display: block;
    width: 70px;
    height: 70px;
    position: fixed !important;
    top: 110px !important;
    left: calc(50% + 600px) !important;
    box-shadow: 0 5px 15px rgba(0, 0, 0, .08);
    border-radius: 50%;
  }
}


/* PRIDUCTDETAILS */
.product-container {
  max-width: 760px;
  margin: 0 auto;
}

.product-image-area a[rel="vm-additional-images"] {
  pointer-events: none;
  width: 100%;
  text-align: center;
  display: block;
}

#product-information .gastro_combo .product-field {
  flex-direction: column;
}

#product-information .product-price {
  margin-bottom: 0;
}

#big-product-image {
  height: 600px;
  object-fit: contain;
}
.product-image-area a[rel="vm-additional-images"] > img {
  height: 600px;
  width: 165px;
  object-fit: cover;
}


/*SECRET WINELIST*/
#cf_option_li_virtuemart_category_id_123_elid11 {
  display: none;
}

.el-product-price2 {
  display: none;
}


.p-secret-wine-list .el-product-price2 {
  display: block;
  font-size: 1.25rem;
  line-height: 1.4;
}

.p-secret-wine-list .el-product-price1 {
  text-decoration: line-through;
  color: #999;
} 

.c-secret-wine-btn {
  margin-bottom: 12px;
}
.c-secret-wine-btn .uk-button {
  border: 3px solid #8c5880;
}


/*Cookie CSS*/
.tm-cookie-banner .uk-container {
  text-align: left !important;
  padding-right: 55px;
  font-size: .875rem;
}
.tm-cookie-banner .uk-close {
  width: 40px;
  transform: none;
  margin: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  background: var(--primary);
}
@media(min-width: 960px){
  .tm-cookie-banner {
    max-width: 420px;
    bottom: 40px;
    left: 40px;
  }
}