.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:100%;}.e-con{--container-max-width:100%;--container-default-padding-top:0;--container-default-padding-right:0;--container-default-padding-bottom:0;--container-default-padding-left:0;}.elementor-widget:not(:last-child){--kit-widget-spacing:0;}.elementor-element{--widgets-spacing:0 0;--widgets-spacing-row:0;--widgets-spacing-column:0;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1300px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --mrkt-font-heading:Cormorant Garamond; --mrkt-font-body:Alegreya Sans; --mrkt-font-ui:Alegreya Sans; }
/* Start custom CSS */:root{
    --mrkt-stamp-sold-out: url("https://bio-berger.at/wp-content/uploads/2026/10/Label-Ausgetrunken-Stempel.svg");
    --mrkt-decor-motif-grapevine: url("/wp-content/uploads/2026/07/motif-grapevine.webp");
}

/* Overlay */
.mrkt-section-hero::before { 
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		linear-gradient(180deg, rgba(28, 30, 24, 0.58) 0%, rgba(20, 24, 18, 0.34) 42%, rgba(17, 18, 12, 0.62) 100%),
		linear-gradient(90deg, rgba(12, 15, 10, 0.34) 0%, rgba(12, 15, 10, 0.18) 48%, rgba(12, 15, 10, 0.4) 100%);
	pointer-events: none;
}

/* SVG Transition Original
.mrkt-section-hero::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -1px;
	left: 0;
	z-index: 1;
	width: 100%;
	height: var(--mrkt-hero-transition-height ,20svh);
	background-image: url("/wp-content/uploads/2026/07/hero-transition.svg");

	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	pointer-events: none;
}
	*/
.elementor .mrkt-section-hero .mrkt-section-hero__divider {
    position: absolute;
    width: 100%;
    height: auto;
    bottom: -1px;
    left: 0px;
    display: flex;
}

.mrkt-section-hero__divider .cls-1{
    fill: var(--mrkt-color-background);
    }

@scope (.mrkt-elementor-product-cart) {
  /* Reset Elementor Defaults */
  :scope .e-div-block-base,
  .elementor :scope {
    padding: 0;
    min-width: 0;
    min-height: 0;
  }

  :scope form.cart {
    /* Layout */
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0;
    width: 100%;
    margin: 0;
  }

  /* Variable products have .elementor-kit-5s and variation details above the buy row. */
  :scope.mrkt-elementor-product-cart form.cart.variations_form {
    /* Layout */
    display: block;
  }

  :scope.mrkt-elementor-product-cart form.cart.variations_form .variations,
  :scope.mrkt-elementor-product-cart form.cart.variations_form .variations tbody {
    /* Layout */
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;

    /* Style */
    border: 0;
    background: transparent;
  }

  :scope.mrkt-elementor-product-cart form.cart.variations_form .variations tr {
    /* Layout */
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--mrkt-space-XS);
    margin-block-end: var(--mrkt-space-S);

    /* Style */
    border: 0;
  }

  :scope.mrkt-elementor-product-cart form.cart.variations_form .variations th,
  :scope.mrkt-elementor-product-cart form.cart.variations_form .variations td {
    /* Layout */
    display: block;
    width: 100%;
    padding: 0;

    /* Typography */
    text-align: start;

    /* Style */
    border: 0;
    background: transparent;
  }

  :scope.mrkt-elementor-product-cart form.cart.variations_form .variations label {
    /* Typography */
    font-family: var(--mrkt-font-ui);
    font-size: var(--mrkt-typo-body-small-size);
    font-weight: var(--mrkt-typo-button-weight);
    line-height: var(--mrkt-typo-body-small-line-height);

    /* Style */
    color: var(--mrkt-color-secondary);
  }

  :scope.mrkt-elementor-product-cart form.cart.variations_form .variations select {
    /* Layout */
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-height: 3.25rem;
    margin: 0;
    padding: var(--mrkt-space-XS) var(--mrkt-space-S);

    /* Typography */
    font-family: var(--mrkt-font-body);
    font-size: var(--mrkt-typo-body-size);

    /* Style */
    border: var(--mrkt-border-width) solid var(--mrkt-color-border);
    border-radius: var(--mrkt-radius-base);
    background: var(--mrkt-color-surface);
    color: var(--mrkt-color-secondary);
  }

  :scope form.variations_form .reset_variations {
    /* Layout */
    display: inline-block;
    margin-block-start: var(--mrkt-space-XS);

    /* Typography */
    font-size: var(--mrkt-typo-body-small-size);
    text-underline-offset: var(--mrkt-space-XXS);

    /* Style */
    color: var(--mrkt-color-primary);
  }

  :scope form.variations_form .single_variation {
    /* Layout */
    margin-block-end: var(--mrkt-space-S);
  }

  :scope form.variations_form .woocommerce-variation-description {
    /* Typography */
    font-size: var(--mrkt-typo-body-small-size);
    line-height: var(--mrkt-typo-body-small-line-height);

    /* Style */
    color: var(--mrkt-color-secondary);
  }

  :scope form.variations_form .woocommerce-variation-price {
    /* Typography */
    font-family: var(--mrkt-font-heading);
    font-size: var(--mrkt-typo-h3-size);
    font-weight: var(--mrkt-typo-h3-weight);
    line-height: 1;

    /* Style */
    color: var(--mrkt-color-secondary);
  }

  /* Native Woo price markup, scoped tightly to this widget. */
  :scope.mrkt-elementor-product-cart form.variations_form .woocommerce-variation-price :is(.price, .woocommerce-Price-amount, bdi) {
    /* Typography */
    font: inherit;
    line-height: inherit;

    /* Style */
    color: inherit;
  }

  :scope form.variations_form .woocommerce-variation-add-to-cart {
    /* Layout */
    display: flex;
    align-items: stretch;
    gap: 0;
    width: 100%;
  }

  :scope.mrkt-elementor-product-cart form.cart.variations_form select:focus-visible {
    /* Style */
    outline: 2px solid var(--mrkt-color-primary);
    outline-offset: 2px;
  }

  :scope form.cart .quantity {
    /* Layout */
    display: flex;
    flex: 0 0 4.75rem;
    align-items: center;
    box-sizing: border-box;
    width: 4.75rem;
    height: 3.75rem;
    margin: 0;
    padding: 0;

    /* Style */
    border: 1px solid var(--mrkt-color-border);
    border-radius: var(--mrkt-radius-base);
    background: var(--mrkt-color-surface);
  }

  :scope form.cart .quantity .qty {
    /* Layout */
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    height: 100%;
    margin: 0;
    padding: 0;

    /* Typography */
    font: 500 var(--mrkt-typo-body-L-size) var(--mrkt-font-body);
    line-height: 1;
    text-align: center;

    /* Style */
    border: 0;
    border-radius: inherit;
    background: transparent;
    color: var(--mrkt-color-secondary);
    appearance: textfield;
  }

  :scope form.cart .qty::-webkit-inner-spin-button,
  :scope form.cart .qty::-webkit-outer-spin-button {
    /* Layout */
    margin: 0;

    /* Style */
    -webkit-appearance: none;
  }

  :scope form.cart .single_add_to_cart_button {
    /* Custom Properties */
    --mrkt-btn-bubble: color-mix(in srgb, var(--mrkt-color-surface) 85%, transparent);
    --mrkt-btn-bubble-border: var(--mrkt-color-category-frizzante-soft);

    /* Positioning */
    position: relative;
    isolation: isolate;
    overflow: hidden;

    /* Layout */
    display: inline-flex;
    flex: 1 1 0;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: 0;
    min-height: 3.75rem;
    margin: 0;
    padding: 0 var(--mrkt-space-M);
    float: none;

    /* Typography */
    font-family: var(--mrkt-typo-button-family);
    font-size: var(--mrkt-typo-button-size);
    font-weight: var(--mrkt-typo-button-weight);
    letter-spacing: var(--mrkt-typo-button-letter-spacing);
    line-height: var(--mrkt-typo-button-line-height);
    text-transform: var(--mrkt-typo-button-transform);
    text-decoration: none;
    white-space: nowrap;

    /* Style */
    border: 1px solid var(--mrkt-color-secondary);
    border-radius: var(--mrkt-radius-base);
    background: var(--mrkt-color-secondary);
    color: var(--mrkt-color-surface);
    cursor: pointer;

    /* Transitions */
    transition: background-color var(--mrkt-transition-base), border-color var(--mrkt-transition-base), transform var(--mrkt-transition-base);
  }

  /* Keep ::after free for WooCommerce's native loading spinner. */
  :scope form.cart .single_add_to_cart_button::before {
    /* Positioning */
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;

    /* Style */
    background-repeat: no-repeat;
    opacity: 0;
    pointer-events: none;
  }

  :scope form.cart .single_add_to_cart_button::before {
    /* Style */
    background-image:
      radial-gradient(circle, var(--mrkt-btn-bubble) 0 42%, var(--mrkt-btn-bubble-border) 43% 58%, transparent 60%),
      radial-gradient(circle, var(--mrkt-btn-bubble) 0 42%, var(--mrkt-btn-bubble-border) 43% 58%, transparent 60%),
      radial-gradient(circle, var(--mrkt-btn-bubble) 0 42%, var(--mrkt-btn-bubble-border) 43% 58%, transparent 60%);
    background-size: 7px 7px, 5px 5px, 9px 9px;
    background-position: 12% calc(100% + 12px), 41% calc(100% + 12px), 68% calc(100% + 12px);
  }

  :scope form.cart .single_add_to_cart_button:hover {
    /* Style */
    border-color: var(--mrkt-color-secondary-strong);
    background: var(--mrkt-color-secondary-strong);
    color: var(--mrkt-color-surface);
    transform: translateY(-2px);
  }

  :scope form.cart .single_add_to_cart_button:hover::before,
  :scope form.cart .single_add_to_cart_button:focus-visible::before {
    /* Transitions */
    animation: mrkt-elementor-cart-bubbles 1.55s linear infinite;
  }

  :scope form.cart .single_add_to_cart_button:focus-visible,
  :scope form.cart .quantity .qty:focus-visible {
    /* Style */
    outline: 2px solid var(--mrkt-color-primary);
    outline-offset: 3px;
  }

  :scope form.cart .single_add_to_cart_button.disabled,
  :scope form.cart .single_add_to_cart_button:disabled {
    /* Style */
    opacity: 0.55;
    cursor: not-allowed;
    transform: none;
  }

  :scope form.cart .single_add_to_cart_button.loading::before {
    /* Transitions */
    animation: none;
  }

  /* Out of stock: Woo renders the note instead of / next to the form */
  :scope p.stock.out-of-stock {
    /* Layout */
    margin: 0;

    /* Typography */
    font-family: var(--mrkt-font-ui, sans-serif);
    font-size: var(--mrkt-typo-meta-size, 0.8125rem);
    line-height: 1.35;

    /* Style */
    color: var(--mrkt-color-secondary-400);
  }

  :scope form.cart .single_add_to_cart_button.disabled,
  :scope form.cart .single_add_to_cart_button:disabled {
    /* Style */
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
  }

  @media (prefers-reduced-motion: reduce) {
    :scope form.cart .single_add_to_cart_button,
    :scope form.cart .single_add_to_cart_button::before {
      /* Transitions */
      transition: none;
      animation: none !important;
    }

    :scope form.cart .single_add_to_cart_button:hover {
      /* Style */
      transform: none;
    }
  }
}

@keyframes mrkt-elementor-cart-bubbles {
	0% {
		opacity: 0;
		background-position: 12% calc(100% + 12px), 41% calc(100% + 12px), 68% calc(100% + 12px);
	}
	15% { opacity: 0.9; }
	100% {
		opacity: 0;
		background-position: 15% calc(100% - 70px), 38% calc(100% - 76px), 71% calc(100% - 66px);
	}
}


@scope (.mrkt-product-categories) {
  /* Reset Elementor defaults */
  :scope .e-div-block-base,
  :scope:is(.elementor *) {
    padding: 0;
    min-width: 0;
    min-height: 0;
  }

  /* Override Elementor */
  .mrkt-product-categories::before,
  .mrkt-product-categories::after {
    width: auto !important;
    height: 100% !important;
    bottom: auto !important;
  }

  .mrkt-product-categories::before {
    left: auto !important;
    right: 0 !important;
  }

  .mrkt-product-categories::after {
    left: 0 !important;
    right: auto !important;
  }
  
  .elementor :scope {
    /* Positioning */
    position: relative;
    isolation: isolate;

    /* Layout */
    display: grid;
    justify-items: center;
    gap: var(--mrkt-space-M);
    padding-inline: var(--mrkt-section-padding-inline);
    padding-block: var(--mrkt-section-padding-block);
    overflow: hidden;

    /* Typography */
    font-family: var(--mrkt-font-body);
    text-align: center;

    /* Style */
    background-color: var(--mrkt-color-secondary-strong);
    color: var(--mrkt-color-surface);
  }

  /* Decor: engraved vineyard backdrop in gold, twice: ::before on the right, ::after
     mirrored on the left. Each box has the SVG's aspect ratio and the band's full height;
     its inner edge fades out so the two meet softly behind the text. */
  .elementor :scope::before,
  .elementor :scope::after {
    /* Positioning */
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    z-index: -1;

    /* Layout */
    width: auto;
    height: 100%;
    aspect-ratio: 677.7 / 379;

    /* Style */
    background-color: var(--mrkt-color-accent);
    opacity: 0.1;
    mask:
      var(--mrkt-decor-backdrop) center / 100% 100% no-repeat,
      linear-gradient(to right, transparent, #000 45%);
    mask-composite: intersect;
    pointer-events: none;
  }

  .elementor :scope::after {
    /* Positioning */
    right: auto;
    left: 0;
    scale: -1 1;
  }

  :scope .title {
    /* Layout */
    max-width: 18ch;
    margin: 0;

    /* Typography */
    font-family: var(--mrkt-typo-h1-family);
    font-size: clamp(2.5rem, 6vw, var(--mrkt-typo-h1-size) * 1.25);
    font-style: italic;
    font-weight: var(--mrkt-typo-h2-weight);
    line-height: var(--mrkt-typo-h1-line-height);
    letter-spacing: var(--mrkt-typo-h1-letter-spacing);
    text-wrap: balance;
  }

  :scope .text {
    /* Layout */
    max-width: 58ch;
    margin: 0;

    /* Typography */
    font-size: var(--mrkt-typo-body-L-size);
    line-height: var(--mrkt-typo-body-L-line-height);
    text-wrap: balance;

    /* Style */
    color: color-mix(in srgb, var(--mrkt-color-surface) 72%, transparent);
  }

  :scope .links {
    /* Layout */
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--mrkt-space-S);
    margin-top: var(--mrkt-space-S);
  }

  :scope .links a:focus-visible {
    /* Style */
    outline-color: var(--mrkt-color-accent);
  }
  /* Bottles sit behind the text on narrow screens, so the backdrop steps back */
  @media (max-width: 700px) {
    .elementor :scope::before {
      opacity: 0.07;
    }

    /* One box already fills a portrait band; a mirrored copy would sit on top of it */
    .elementor :scope::after {
      content: none;
    }
  }
}

.mrkt-section-kontakt__links a {
    color: var(--mrkt-color-secondary);
}

.mrkt-section-kontakt__link:last-child { border-bottom: 1px solid var(--mrkt-color-border);
}
.mrkt-section-kontakt__link:hover {
    padding-left: 1.5rem!important;
    border-color: var(--mrkt-color-secondary)!important;
    
}

@scope (.mrkt-contact-visit) {
  /* Reset Elementor Defaults */
  :scope .e-div-block-base,
  .elementor :scope {
    padding: 0;
    min-width: 0;
    min-height: 0;
  }

  /* Spacing rhythm: section stack M · head S · grid gap M ·
     card padding M · card inner gap S · fact row padding-block S */
  .elementor :scope {
    /* Layout */
    display: grid;
    gap: var(--mrkt-space-M);
    padding-block: var(--mrkt-section-padding-block);
    padding-inline: var(--mrkt-section-padding-inline);
  }

  :scope .head {
    /* Layout */
    display: grid;
    gap: var(--mrkt-space-S);
  }

  :scope .title {
    /* Layout */
    margin: 0;
    max-width: 35ch;
  }

  :scope .lead {
    /* Layout */
    margin: 0;
    max-width: var(--mrkt-max-content-width);
  }

  /* Three equal cards: photo on top, facts, action pinned to the bottom */
  :scope .grid {
    /* Layout */
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--mrkt-space-M);
  }

  :scope .card {
    /* Layout */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    /* Style */
    border: var(--mrkt-border-width) solid var(--mrkt-color-border);
    border-radius: var(--mrkt-radius-base);
    background-color: var(--mrkt-color-surface);
    box-shadow: var(--mrkt-shadow-S);
    overflow: hidden;
  }

  :scope .media {
    /* Layout */
    margin: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;

    /* Style */
    background-color: var(--mrkt-color-background-alt);
  }

  :scope .media img {
    /* Layout */
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  :scope .body {
    /* Layout */
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--mrkt-space-S);
    padding: var(--mrkt-space-M);
  }

  :scope .name {
    /* Layout */
    margin: 0;
  }

  :scope .desc {
    /* Layout */
    margin: 0;
  }

  :scope .facts {
    /* Layout */
    margin: 0;
  }

  :scope .fact {
    /* Layout */
    display: grid;
    gap: var(--mrkt-space-XXS);
    margin: 0;
    padding-block: var(--mrkt-space-S);

    /* Style */
    border-block-start: var(--mrkt-border-width) solid var(--mrkt-color-border-soft);
  }

  :scope .fact .mrkt-typo-meta {
    /* Layout */
    margin: 0;

    /* Style */
    color: var(--mrkt-color-primary);
  }

  :scope .fact .mrkt-typo-body-small {
    /* Layout */
    margin: 0;
  }

  /* Full-width action pinned to the card bottom, so the three buttons line up */
  :scope .card .mrkt-btn--secondary {
    /* Layout */
    margin-block-start: auto;
  }

  /* Phone and mail links read as actions, not as decoration */
  :scope a:not(.mrkt-btn--primary) {
    /* Typography */
    text-decoration: underline;
    text-underline-offset: 0.16em;

    /* Style */
    color: var(--mrkt-color-primary);
  }

  :scope a:focus-visible {
    /* Style */
    outline: 2px solid var(--mrkt-color-accent);
    outline-offset: var(--mrkt-space-XS);
    border-radius: var(--mrkt-radius-S);
  }

  @media screen and (width < 1301px) {
    :scope .name {
      /* Typography */
      font-size: var(--mrkt-typo-h4-size);
    }
    :scope .grid {
      /* Layout */
      grid-template-columns: minmax(0, 1fr);
    }
  }
}/* End custom CSS */