.elementor-widget-template.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-template .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-template .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-template.pa-bg-clipped-yes.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-text, .elementor-widget-template:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-template.premium-gbadge-custom:not(.pa-bg-clipped-yes) .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-template .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-widget-text-editor.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-text-editor .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-text-editor .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-text-editor.pa-bg-clipped-yes.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-text, .elementor-widget-text-editor:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-text-editor.premium-gbadge-custom:not(.pa-bg-clipped-yes) .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1205 .elementor-element.elementor-element-c16b88c{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Open Sans", Sans-serif;font-size:0.65rem;font-weight:400;font-style:italic;line-height:1.5;}.elementor-widget-container.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-container .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-container.pa-bg-clipped-yes.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-text, .elementor-widget-container:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-container.premium-gbadge-custom:not(.pa-bg-clipped-yes) .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-1205 .elementor-element.elementor-element-1ad8460{--display:flex;}.elementor-widget-theme-site-logo.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-theme-site-logo .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-theme-site-logo .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-theme-site-logo.pa-bg-clipped-yes.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-text, .elementor-widget-theme-site-logo:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-theme-site-logo.premium-gbadge-custom:not(.pa-bg-clipped-yes) .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-theme-site-logo .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}/* Start custom CSS *//**
 * Kontakt – Bio-Weinbau Berger (frontend/pages/kontakt.html).
 *
 * Hero (shared with Über uns, ueber-uns.css) → form block (copy left, Elementor
 * form placeholder right) → three cards for the three ways to get the wines
 * (cellar door, market stand, online shop), each with photo, facts and one
 * action. Spacing rhythm for the card section: section stack M, head S,
 * grid gap M, card padding M, card inner gap S, fact row padding-block S.
 * Layout and composition only; palette and type come from the site globals.
 * The shared shop header lives in frontend/css/shop-header.css.
 */

@scope (.mrkt-contact-form) {
  /* Reset Elementor Defaults */
  :scope .e-div-block-base,
  .elementor :scope {
    padding: 0;
    min-width: 0;
    min-height: 0;
  }

  .elementor :scope {
    /* Layout */
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
    align-items: start;
    gap: var(--mrkt-space-L);
    padding-block: var(--mrkt-section-padding-block);
    padding-inline: var(--mrkt-section-padding-inline);
  }

  :scope .intro {
    /* Layout */
    display: grid;
    gap: var(--mrkt-space-M);
  }

  :scope .title {
    /* Layout */
    margin: 0;
    max-width: 16ch;
  }

  :scope .lead {
    /* Layout */
    margin: 0;
    max-width: var(--mrkt-max-content-width);
  }

  :scope .rows {
    /* Layout */
    display: grid;
    gap: var(--mrkt-space-S);
    margin: var(--mrkt-space-XS) 0 0;
  }

  :scope .row {
    /* Layout */
    display: grid;
    gap: var(--mrkt-space-XXS);
    margin: 0;
    padding-block: var(--mrkt-space-S);
    border-block-start: var(--mrkt-border-width) solid var(--mrkt-color-border-soft);
  }

  :scope .row dt {
    /* Layout */
    margin: 0;
  }

  :scope .row dd {
    /* Layout */
    margin: 0;
  }

  /* Placeholder for the Elementor form widget, visible until it is pasted in */
  :scope .slot {
    /* Layout */
    display: grid;
    align-content: start;
    gap: var(--mrkt-space-S);
    min-block-size: 26rem;
    padding: var(--mrkt-space-M);

    /* Style */
    border: 2px dashed var(--mrkt-color-border);
    border-radius: var(--mrkt-radius-base);
    background-color: var(--mrkt-color-background-alt);
  }

  :scope .slot-label {
    /* Layout */
    margin: 0;
  }

  :scope .slot-note {
    /* Layout */
    margin: 0;
    max-width: 46ch;

    /* Style */
    color: var(--mrkt-color-text);
  }

  /* Phone and mail links read as actions, not as decoration */
  :scope a {
    /* 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) {
    .elementor :scope {
      /* Layout */
      grid-template-columns: minmax(0, 1fr);
    }
  }
}

@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: 18ch;
  }

  :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: grid;
    grid-template-rows: auto 1fr;

    /* 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);
    }
  }

  @media screen and (width < 768px) {
    :scope .grid {
      /* Layout */
      grid-template-columns: minmax(0, 1fr);
    }
  }
}/* End custom CSS */