@charset "UTF-8";
/*!
Theme Name: Explorer Coffee
Theme URI: https://underscores.me/
Author: Automattic
Author URI: https://automattic.com/
Description: Eigenes Theme für explorercoffee.de (Kaffeerösterei und Shop, Winnenden), entstanden aus dem Starter-Theme Underscores.
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: explorer
Update URI: false
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Explorer Coffee is based on Underscores (_s) https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/* Normalize
--------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Box sizing
--------------------------------------------- */
/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/* Typography
--------------------------------------------- */
@font-face {
  font-family: "Lato Light";
  src: url("assets/fonts/lato/lato-300-normal.ttf") format("truetype");
  font-weight: 300;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Lato";
  src: url("assets/fonts/lato/lato-400-normal.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Lato Bold";
  src: url("assets/fonts/lato/lato-700-normal.woff2") format("woff2");
  font-weight: 700;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Lato Black";
  src: url("assets/fonts/lato/lato-900-normal.ttf") format("truetype");
  font-weight: 900;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Vollkorn";
  src: url("assets/fonts/vollkorn/Vollkorn-latin-wght.woff2") format("woff2");
  font-weight: 400 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vollkorn";
  src: url("assets/fonts/vollkorn/Vollkorn-Italic-latin-wght.woff2") format("woff2");
  font-weight: 400 900;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Vollkorn Medium";
  src: url("assets/fonts/vollkorn/Vollkorn-latin-wght.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vollkorn SemiBold";
  src: url("assets/fonts/vollkorn/Vollkorn-latin-wght.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: "Lato", Arial, sans-serif;
  font-size: 1.125rem;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 500;
  margin-bottom: 0.5em;
}

h1 {
  font-size: clamp(2rem, 1.3rem + 2.4vw, 3rem);
  line-height: 1.15;
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  text-transform: none;
  letter-spacing: -0.005em;
  margin-top: 1.5em;
}

h2 {
  font-size: clamp(1.5rem, 1.1rem + 1.2vw, 2.125rem);
  line-height: 1.2;
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  text-transform: none;
  margin-top: 1.6em;
}

h3 {
  font-size: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);
  line-height: 1.25;
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  text-transform: none;
  margin-top: 1.5em;
}

h4 {
  font-size: 1.2rem;
  line-height: 1.3;
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  margin-top: 1.6em;
}

h5 {
  font-size: 1.5em;
  line-height: 1.5em;
  font-family: "Lato Bold", Arial, sans-serif;
  margin: 1em 0 0.6em 0 !important;
}

h6 {
  font-size: 1.2em;
  font-family: "Lato Bold", Arial, sans-serif;
  line-height: 1.2em;
  margin: 1em 0 0.6em 0 !important;
}

.entry-header--with-image + .entry-content.container > h1 {
  margin-top: 1em;
}

p {
  margin: 0 0 1em 0;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code,
kbd,
tt,
var {
  font-family: "Courier 10 Pitch", courier, monospace;
}

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark,
ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
  background: #fff;
  font-size: 1.125rem;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul,
ol {
  margin: 0;
  padding: 0;
  margin-bottom: 1em;
}

ul {
  list-style: disc;
  list-style-position: inside;
}

ol {
  list-style: decimal;
  list-style-position: inside;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
  width: 100%;
  height: auto;
}

img {
  height: auto;
  max-width: 100%;
}

figure {
  margin: 0 0 1em 0;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/* Links
--------------------------------------------- */
a {
  color: #000;
}
a:visited {
  color: #000;
}
a:hover, a:focus, a:active {
  color: #191970;
}
a:focus {
  outline: thin dotted;
}
a:hover, a:active {
  outline: 0;
}

.wp-block-button a:visited {
  color: #ccc;
}

p > a {
  font-family: "Lato Bold";
}

/* Forms
--------------------------------------------- */
button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: 0.6em 1em 0.4em;
}
button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
  border-color: #ccc #bbb #aaa;
}
button:active, button:focus,
input[type=button]:active,
input[type=button]:focus,
input[type=reset]:active,
input[type=reset]:focus,
input[type=submit]:active,
input[type=submit]:focus {
  border-color: #aaa #bbb #bbb;
}

button,
.button,
.wp-element-button {
  display: block;
  text-align: center;
  margin-bottom: 1em;
  font-size: 1.125em;
  padding: 0.5em 1.5em;
  background: black;
  border: 1px solid #000;
  border-radius: 7px;
  color: white;
  text-decoration: none;
}
button:hover,
.button:hover,
.wp-element-button:hover {
  background: #333447 !important;
  color: white !important;
}

.wp-block-search__button {
  margin: 0;
  margin-left: 10px;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
@media (min-width: 640px) {
  .container {
    max-width: 640px;
  }
}
@media (min-width: 940px) {
  .container {
    max-width: 940px;
  }
}
@media (min-width: 1120px) {
  .container {
    max-width: 1080px;
  }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1080px;
  }
}
/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Navigation
--------------------------------------------- */
.main-navigation {
  display: block;
  width: 100%;
}
.main-navigation ul {
  display: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
}
.main-navigation ul ul {
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 100%;
  left: -999em;
  z-index: 99999;
}
.main-navigation ul ul ul {
  left: -999em;
  top: 0;
}
.main-navigation ul ul li:hover > ul, .main-navigation ul ul li.focus > ul {
  display: block;
  left: auto;
}
.main-navigation ul ul a {
  width: 200px;
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}
.main-navigation li {
  position: relative;
}
.main-navigation a {
  display: block;
  text-decoration: none;
}
/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none;
  }
  .main-navigation ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
}
.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 50%;
          flex: 1 0 50%;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  text-align: end;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 50%;
          flex: 1 0 50%;
}

.wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
  font-size: var(--wp--custom--font-sizes--normal);
  padding-bottom: 0;
  padding-left: var(--wp--custom--gap--horizontal);
  padding-top: 0.5rem;
  row-gap: 0.5rem;
}

ul.wp-block-social-links {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

nav {
  font-family: "Lato", Arial, sans-serif;
  font-weight: 500;
  font-size: 18px;
  text-transform: uppercase;
}
nav .current-menu-item {
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
}

.wp-block-navigation__container {
  gap: 20px;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
  display: block;
}

.post,
.page {
  margin: 0 0 1.5em;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

body.single-post .entry-content {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 2.5em;
  font-size: 1.125rem;
  line-height: 1.75;
  color: #333447;
  display: flow-root;
}
body.single-post .entry-content > p,
body.single-post .entry-content > ul,
body.single-post .entry-content > ol,
body.single-post .entry-content > blockquote,
body.single-post .entry-content > figure {
  margin: 0 0 1.4em 0;
}
body.single-post .entry-content h2 {
  font-size: 1.7em;
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  text-transform: initial;
  letter-spacing: normal;
  margin-top: 1.5em;
  margin-bottom: 0.6em;
  line-height: 1.25;
}
body.single-post .entry-content h3 {
  font-size: 1.3em;
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  text-transform: initial;
  letter-spacing: normal;
  margin-top: 1.4em;
  margin-bottom: 0.5em;
  line-height: 1.3;
}
body.single-post .entry-content a {
  color: #333447;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
body.single-post .entry-content a.wp-element-button,
body.single-post .entry-content a.wp-element-button:visited {
  display: inline-block;
  color: white;
  text-decoration: none;
}
body.single-post .entry-content a.wp-element-button:hover {
  color: white;
  text-decoration: none;
}
body.single-post .entry-content strong {
  font-weight: 700;
}
body.single-post .entry-content blockquote {
  margin-left: 0;
  padding-left: 24px;
  border-left: 3px solid #e2e2e2;
  font-style: italic;
  color: #555;
}
body.single-post .entry-content img {
  max-width: 100%;
  height: auto;
  border-radius: 4px;
}
body.single-post .entry-content > p:first-of-type {
  font-size: 1.15em;
  color: #444;
}
@media (max-width: 1024px) {
  body.single-post .entry-content {
    max-width: 640px;
  }
}
@media (max-width: 768px) {
  body.single-post .entry-content {
    max-width: 100%;
    padding-top: 2em;
    font-size: 1.0625rem;
  }
  body.single-post .entry-content h2 {
    font-size: 1.5em;
  }
  body.single-post .entry-content h3 {
    font-size: 1.2em;
  }
}

/* Beiträge: ausgerichtete (schwebende) Tabellen und Bilder im Inhalt vor den Teasern beenden */
.single-post .site-main {
  display: flow-root;
}

.blog-teasers {
  clear: both;
}

.single-post .entry-content table th,
.single-post .entry-content table td {
  overflow-wrap: normal;
  word-break: normal;
  -ms-hyphens: auto;
      hyphens: auto;
}

/* Comments
--------------------------------------------- */
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
  margin: 0 0 1.5em;
}
.widget select {
  max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*=wp-image-] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
  margin-bottom: 1.5em;
  display: grid;
  grid-gap: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%;
}

.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/* Jetpack infinite scroll
--------------------------------------------- */
/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}

.shop-categories .wp-block-navigation {
  gap: 5px;
}
.shop-categories .wp-block-navigation-item {
  display: block;
}
.shop-categories .wp-block-navigation-item a {
  padding: 5px 10px;
  background: #ccc;
  color: black;
  border: 1px solid #ccc;
}
.shop-categories .wp-block-navigation-item a:hover {
  color: #666 !important;
  border: 1px solid #000;
}
.shop-categories .wp-block-navigation-item.current-menu-item {
  font-weight: 700px;
}
.shop-categories .wp-block-navigation-item.current-menu-item a {
  background: black;
  color: white;
}
.shop-categories .wp-block-navigation-item.current-menu-item a:hover {
  color: white !important;
  border: 1px solid #000;
}

.product-categories {
  text-align: center;
  margin: 4em 0;
}

.wc-block-product-categories-list {
  list-style: none;
  padding: 0;
}
.wc-block-product-categories-list-item {
  display: inline-block;
  margin-right: 1em;
  margin-bottom: 2em;
  position: relative;
}
.wc-block-product-categories-list-item a {
  border: 3px solid black;
  padding: 10px 43px 10px 15px;
  text-decoration: none;
  color: black;
}
.wc-block-product-categories-list-item a:hover {
  background-color: black;
  color: white !important;
}
.wc-block-product-categories-list-item-count {
  font-size: 1rem;
  color: #fff;
  background: #000;
  border-radius: 15px;
  height: 30px;
  width: 30px;
  display: block;
  text-align: center;
  font-weight: bold;
  line-height: 25px;
  position: absolute;
  right: 6px;
  top: -1px;
  border: 3px solid black;
}
.wc-block-product-categories-list-item-count:before {
  content: "" !important;
}
.wc-block-product-categories-list-item-count:after {
  content: "" !important;
}

.wp-block-woocommerce-product-collection h2.wp-block-heading,
ul.products h2.wp-block-heading {
  font-size: 2.5em !important;
  line-height: 1em;
}
.wp-block-woocommerce-product-collection a,
ul.products a {
  color: white !important;
}
.wp-block-woocommerce-product-collection a:visited,
ul.products a:visited {
  color: white !important;
}
.wp-block-woocommerce-product-collection ul,
ul.products ul {
  margin: 0;
}
.wp-block-woocommerce-product-collection .wc-block-product,
ul.products .wc-block-product {
  margin-bottom: 2em !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
}
.wp-block-woocommerce-product-collection .wc-block-product .wc-block-components-product-image,
ul.products .wc-block-product .wc-block-components-product-image {
  overflow: hidden;
}
.wp-block-woocommerce-product-collection .wc-block-product .wc-block-components-product-image img,
ul.products .wc-block-product .wc-block-components-product-image img {
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}
.wp-block-woocommerce-product-collection .wc-block-product .wc-block-components-product-button,
ul.products .wc-block-product .wc-block-components-product-button {
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}
.wp-block-woocommerce-product-collection .wc-block-product .wc-block-components-product-button a,
ul.products .wc-block-product .wc-block-components-product-button a {
  border: 1px solid #000;
  border-radius: 1px;
  background: white;
  color: black !important;
}
.wp-block-woocommerce-product-collection .wc-block-product h3,
ul.products .wc-block-product h3 {
  min-height: 2em;
}
.wp-block-woocommerce-product-collection .wc-block-product h3 a,
ul.products .wc-block-product h3 a {
  color: black !important;
}
.wp-block-woocommerce-product-collection .wc-block-product h3 a:visited,
ul.products .wc-block-product h3 a:visited {
  color: black !important;
}
.wp-block-woocommerce-product-collection .wc-block-product:hover,
ul.products .wc-block-product:hover {
  position: relative;
}
.wp-block-woocommerce-product-collection .wc-block-product:hover h3,
ul.products .wc-block-product:hover h3 {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  font-weight: 700;
}
.wp-block-woocommerce-product-collection .wc-block-product:hover img,
ul.products .wc-block-product:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1); /* (150% zoom - Note: if the zoom is too large, it will go outside of the viewport) */
}
.wp-block-woocommerce-product-collection .wc-block-product:hover .wc-block-components-product-button a,
ul.products .wc-block-product:hover .wc-block-components-product-button a {
  border: 1px solid #000;
  background: black;
  color: white !important;
}
.wp-block-woocommerce-product-collection .product,
ul.products .product {
  margin: 0 !important;
  padding: 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
}
.wp-block-woocommerce-product-collection .product .woocommerce-loop-product__link,
ul.products .product .woocommerce-loop-product__link {
  text-align: center;
  text-decoration: none !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.wp-block-woocommerce-product-collection .product .woocommerce-loop-product__link img,
ul.products .product .woocommerce-loop-product__link img {
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  margin-bottom: 0.75rem;
}
.wp-block-woocommerce-product-collection .product a.button,
ul.products .product a.button {
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  border: 1px solid #000;
  border-radius: 1px;
  background: white;
  color: black !important;
  -webkit-box-shadow: none;
          box-shadow: none;
  text-decoration: none;
  padding: calc(0.667em + 2px) calc(1.333em + 2px);
  text-align: center;
  white-space: normal;
  width: auto;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: inherit;
  overflow: hidden;
  white-space: normal;
  word-break: break-word;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: var(--wp--preset--font-size--small) !important;
}
.wp-block-woocommerce-product-collection .product h2,
ul.products .product h2 {
  min-height: 2em;
  font-size: var(--wp--preset--font-size--medium) !important;
  line-height: 1.1em;
  color: black !important;
  text-decoration: none !important;
  font-weight: 500;
  margin-bottom: 0.75rem;
  margin-top: 0;
}
.wp-block-woocommerce-product-collection .product a,
ul.products .product a {
  color: black !important;
}
.wp-block-woocommerce-product-collection .product a:visited,
ul.products .product a:visited {
  color: black !important;
}
.wp-block-woocommerce-product-collection .product p.price,
ul.products .product p.price {
  text-align: center;
  font-size: var(--wp--preset--font-size--small) !important;
  margin: 0;
}

.related-products .wc-block-product-template {
  list-style: none;
  margin-bottom: 0;
  margin-top: 0;
  max-width: 100%;
  padding: 0;
}
.related-products .wc-block-product-template.wc-block-product-template {
  background: none;
}
.related-products .wc-block-product-template.is-flex-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.25em;
}
.related-products .wc-block-product-template.is-flex-container > li {
  list-style: none;
  margin: 0;
  width: 100%;
}
@media (min-width: 600px) {
  .related-products .wc-block-product-template.is-flex-container.is-flex-container.columns-2 > li {
    width: calc(50% - 0.625em);
  }
  .related-products .wc-block-product-template.is-flex-container.is-flex-container.columns-3 > li {
    width: calc(33.33333% - 0.83333em);
  }
  .related-products .wc-block-product-template.is-flex-container.is-flex-container.columns-4 > li {
    width: calc(25% - 0.9375em);
  }
  .related-products .wc-block-product-template.is-flex-container.is-flex-container.columns-5 > li {
    width: calc(20% - 1em);
  }
  .related-products .wc-block-product-template.is-flex-container.is-flex-container.columns-6 > li {
    width: calc(16.66667% - 1.04167em);
  }
}
.related-products .wc-block-product-template__responsive {
  grid-gap: 1.25em;
  display: -ms-grid;
  display: grid;
}
.related-products .wc-block-product-template__responsive.columns-2 {
  grid-template-columns: repeat(auto-fill, minmax(max(150px, 50% - 0.625em), 1fr));
}
.related-products .wc-block-product-template__responsive.columns-3 {
  grid-template-columns: repeat(auto-fill, minmax(max(150px, 33.33333% - 0.83333em), 1fr));
}
.related-products .wc-block-product-template__responsive.columns-4 {
  grid-template-columns: repeat(auto-fill, minmax(max(150px, 25% - 0.9375em), 1fr));
}
.related-products .wc-block-product-template__responsive.columns-5 {
  grid-template-columns: repeat(auto-fill, minmax(max(150px, 20% - 1em), 1fr));
}
.related-products .wc-block-product-template__responsive.columns-6 {
  grid-template-columns: repeat(auto-fill, minmax(max(150px, 16.66667% - 1.04167em), 1fr));
}
.related-products .wc-block-product-template__responsive > li {
  -webkit-margin-before: 0;
          margin-block-start: 0;
}
.related-products :where(.wc-block-product-template .wc-block-product) > :not(:last-child) {
  margin-bottom: 0.75rem;
  margin-top: 0;
}
.related-products .is-product-collection-layout-list .wc-block-product:not(:last-child) {
  margin-bottom: 1.2rem;
}

.woocommerce ul.products {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin: 0;
  padding: 0;
}
.woocommerce ul.products .product {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.woocommerce ul.products .product p.price {
  margin-bottom: 0.75rem;
}
.woocommerce ul.products .product .button {
  width: 80%;
}

ul.products.columns-4 li.product {
  width: 100%;
}

@media screen and (min-width: 24em) {
  ul.products.columns-4 li.product {
    width: 50%;
  }
}
@media screen and (min-width: 48em) {
  ul.products.columns-4 li.product {
    width: 25%;
  }
}
.woocommerce-result-count {
  font-size: 1.2rem;
  float: left;
  margin: 1rem 0 1rem 0;
  line-height: 1.2rem;
}

.woocommerce .woocommerce-ordering {
  text-align: right;
  margin-bottom: 1em;
}
.woocommerce .woocommerce-ordering select {
  height: 3.5rem;
  padding: 0.9rem 1.1rem;
  padding-right: 2em;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hldnJvbi1kb3duIj48cG9seWxpbmUgcG9pbnRzPSI2IDkgMTIgMTUgMTggOSI+PC9wb2x5bGluZT48L3N2Zz4=) no-repeat;
  background-size: 16px;
  background-position: calc(100% - 12px) 50%;
}

.woocommerce-pagination {
  margin: 2em 0;
}
.woocommerce-pagination ul {
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.woocommerce-pagination ul li {
  margin-left: 0.5em;
  border: 1px solid black;
}
.woocommerce-pagination ul li:hover a {
  background: #aaa;
  color: black;
}
.woocommerce-pagination ul li a {
  display: block;
  padding: 0.5em 1em;
  background: black;
  color: white;
  text-decoration: none !important;
}
.woocommerce-pagination ul li a:visited {
  color: white !important;
}
.woocommerce-pagination ul li span {
  display: block;
  padding: 0.5em 1em;
  font-weight: bold;
  background: white;
  color: black;
}

.wp-block-cover h2.has-x-large-font-size {
  font-size: 2em !important;
}
@media screen and (min-width: 1024px) {
  .wp-block-cover h2.has-x-large-font-size {
    font-size: 4em !important;
  }
}
.wp-block-cover h2.has-x-large-font-size {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  background: rgba(255, 255, 255, 0.5294117647);
}

:root {
  --ec-taste-dot-opacity: 0.85;
  --ec-taste-neutral: #333447;
  --ec-taste-kakao: #633826;
  --ec-taste-nuss: #8c5933;
  --ec-taste-karamell: #b55400;
  --ec-taste-honig: #9e7c0a;
  --ec-taste-honig-text: #15161f;
  --ec-taste-steinobst: #c13828;
  --ec-taste-beeren: #8e2344;
  --ec-taste-zitrus: #707014;
  --ec-taste-blueten: #7251bc;
  --ec-taste-gewuerze: #933311;
  --ec-taste-kraeuter: #5e663a;
  --ec-taste-roestig: #494c49;
  --ec-taste-sanft: #e6d5bc;
  --ec-taste-sanft-text: #15161f;
  --ec-taste-sanft-border: #cdb89a;
}

.ec-taste--kakao {
  --ec-note-color: var(--ec-taste-kakao);
}

.ec-taste--nuss {
  --ec-note-color: var(--ec-taste-nuss);
}

.ec-taste--karamell {
  --ec-note-color: var(--ec-taste-karamell);
}

.ec-taste--honig {
  --ec-note-color: var(--ec-taste-honig);
}

.ec-taste--steinobst {
  --ec-note-color: var(--ec-taste-steinobst);
}

.ec-taste--beeren {
  --ec-note-color: var(--ec-taste-beeren);
}

.ec-taste--zitrus {
  --ec-note-color: var(--ec-taste-zitrus);
}

.ec-taste--blueten {
  --ec-note-color: var(--ec-taste-blueten);
}

.ec-taste--gewuerze {
  --ec-note-color: var(--ec-taste-gewuerze);
}

.ec-taste--kraeuter {
  --ec-note-color: var(--ec-taste-kraeuter);
}

.ec-taste--roestig {
  --ec-note-color: var(--ec-taste-roestig);
}

.ec-taste--sanft {
  --ec-note-color: var(--ec-taste-sanft);
}

.ec-taste--honig {
  --ec-note-text: var(--ec-taste-honig-text);
}

.ec-taste--sanft {
  --ec-note-text: var(--ec-taste-sanft-text);
  --ec-note-border: var(--ec-taste-sanft-border);
  --ec-note-dot-opacity: 1;
}

.woocommerce ul.products li.product,
.woocommerce .related-products ul li.product {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  text-align: center;
}
.woocommerce ul.products li.product.product,
.woocommerce .related-products ul li.product.product {
  padding: 1.25rem 0.75rem 1.75rem;
}
@media screen and (max-width: 47.99em) {
  .woocommerce ul.products li.product.product,
  .woocommerce .related-products ul li.product.product {
    padding: 0.75rem 0.375rem 1.75rem;
  }
}
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.woocommerce .related-products ul li.product .woocommerce-loop-product__link {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.woocommerce ul.products li.product .ec-card__media,
.woocommerce .related-products ul li.product .ec-card__media {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.woocommerce ul.products li.product .ec-card__media img,
.woocommerce .related-products ul li.product .ec-card__media img {
  width: calc(100% - 28px);
  max-width: 100%;
  margin: 0 auto;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: -webkit-transform 0.35s ease;
  transition: -webkit-transform 0.35s ease;
  transition: transform 0.35s ease;
  transition: transform 0.35s ease, -webkit-transform 0.35s ease;
}
@media screen and (max-width: 47.99em) {
  .woocommerce ul.products li.product .ec-card__media img,
  .woocommerce .related-products ul li.product .ec-card__media img {
    width: calc(100% - 24px);
  }
}
.woocommerce ul.products li.product .ec-notes,
.woocommerce .related-products ul li.product .ec-notes {
  position: absolute;
  top: 2px;
  left: 0;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
  pointer-events: none;
}
.woocommerce ul.products li.product .ec-notes__item,
.woocommerce .related-products ul li.product .ec-notes__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0;
  margin: 0;
  padding: 2px;
  border-radius: 4px;
  background: transparent;
  color: #333447;
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
  font-size: 0.6875rem;
  line-height: 1.2;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-align: left;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, padding 0.2s ease, font-size 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, padding 0.2s ease, font-size 0.2s ease;
}
.woocommerce ul.products li.product .ec-notes__dot,
.woocommerce .related-products ul li.product .ec-notes__dot {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--ec-note-color, var(--ec-taste-neutral, #333447));
  opacity: var(--ec-note-dot-opacity, var(--ec-taste-dot-opacity, 0.85));
  -webkit-box-shadow: 0 0 0 1.5px rgba(255, 255, 255, 0.9), inset 0 0 0 1px var(--ec-note-border, transparent);
          box-shadow: 0 0 0 1.5px rgba(255, 255, 255, 0.9), inset 0 0 0 1px var(--ec-note-border, transparent);
  -webkit-transition: width 0.2s ease, height 0.2s ease;
  transition: width 0.2s ease, height 0.2s ease;
}
.woocommerce ul.products li.product .ec-notes__item--main .ec-notes__dot,
.woocommerce .related-products ul li.product .ec-notes__item--main .ec-notes__dot {
  width: 12px;
  height: 12px;
}
.woocommerce ul.products li.product .ec-notes__label,
.woocommerce .related-products ul li.product .ec-notes__label {
  max-width: 0;
  overflow: hidden;
  white-space: nowrap;
  opacity: 0;
  -webkit-transition: max-width 0.25s ease, opacity 0.2s ease;
  transition: max-width 0.25s ease, opacity 0.2s ease;
}
.woocommerce ul.products li.product.product,
.woocommerce .related-products ul li.product.product {
  border-radius: 10px;
  -webkit-transition: -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  transition: transform 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
}
.woocommerce ul.products li.product:focus-within, .woocommerce ul.products li.product:hover,
.woocommerce .related-products ul li.product:focus-within,
.woocommerce .related-products ul li.product:hover {
  -webkit-box-shadow: 0 8px 24px rgba(51, 52, 71, 0.12);
          box-shadow: 0 8px 24px rgba(51, 52, 71, 0.12);
}
@media (hover: hover) {
  .woocommerce ul.products li.product:hover, .woocommerce ul.products li.product:focus-within,
  .woocommerce .related-products ul li.product:hover,
  .woocommerce .related-products ul li.product:focus-within {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
  .woocommerce ul.products li.product:hover .ec-card__media img, .woocommerce ul.products li.product:focus-within .ec-card__media img,
  .woocommerce .related-products ul li.product:hover .ec-card__media img,
  .woocommerce .related-products ul li.product:focus-within .ec-card__media img {
    -webkit-transform: scale(1.03);
            transform: scale(1.03);
  }
  .woocommerce ul.products li.product:hover .ec-notes__item, .woocommerce ul.products li.product:focus-within .ec-notes__item,
  .woocommerce .related-products ul li.product:hover .ec-notes__item,
  .woocommerce .related-products ul li.product:focus-within .ec-notes__item {
    gap: 0;
    padding: 3px 7px;
    background: var(--ec-note-color, var(--ec-taste-neutral, #333447));
    color: var(--ec-note-text, #fff);
    -webkit-box-shadow: inset 0 0 0 1px var(--ec-note-border, transparent);
            box-shadow: inset 0 0 0 1px var(--ec-note-border, transparent);
  }
  .woocommerce ul.products li.product:hover .ec-notes__item--main, .woocommerce ul.products li.product:focus-within .ec-notes__item--main,
  .woocommerce .related-products ul li.product:hover .ec-notes__item--main,
  .woocommerce .related-products ul li.product:focus-within .ec-notes__item--main {
    padding: 4px 9px;
    font-size: 0.75rem;
  }
  .woocommerce ul.products li.product:hover .ec-notes__dot, .woocommerce ul.products li.product:focus-within .ec-notes__dot,
  .woocommerce .related-products ul li.product:hover .ec-notes__dot,
  .woocommerce .related-products ul li.product:focus-within .ec-notes__dot {
    width: 0;
    height: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .woocommerce ul.products li.product:hover .ec-notes__label, .woocommerce ul.products li.product:focus-within .ec-notes__label,
  .woocommerce .related-products ul li.product:hover .ec-notes__label,
  .woocommerce .related-products ul li.product:focus-within .ec-notes__label {
    max-width: 12em;
    opacity: 1;
  }
  .woocommerce ul.products li.product:hover a.button, .woocommerce ul.products li.product:focus-within a.button,
  .woocommerce .related-products ul li.product:hover a.button,
  .woocommerce .related-products ul li.product:focus-within a.button {
    background: #333447;
    color: #fff !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .woocommerce ul.products li.product.product,
  .woocommerce ul.products li.product .ec-card__media img,
  .woocommerce ul.products li.product .ec-notes__item,
  .woocommerce ul.products li.product .ec-notes__label,
  .woocommerce ul.products li.product .ec-notes__dot,
  .woocommerce ul.products li.product a.button,
  .woocommerce .related-products ul li.product.product,
  .woocommerce .related-products ul li.product .ec-card__media img,
  .woocommerce .related-products ul li.product .ec-notes__item,
  .woocommerce .related-products ul li.product .ec-notes__label,
  .woocommerce .related-products ul li.product .ec-notes__dot,
  .woocommerce .related-products ul li.product a.button {
    -webkit-transition: none;
    transition: none;
  }
  .woocommerce ul.products li.product:hover, .woocommerce ul.products li.product:focus-within,
  .woocommerce .related-products ul li.product:hover,
  .woocommerce .related-products ul li.product:focus-within {
    -webkit-transform: none;
            transform: none;
  }
  .woocommerce ul.products li.product:hover .ec-card__media img, .woocommerce ul.products li.product:focus-within .ec-card__media img,
  .woocommerce .related-products ul li.product:hover .ec-card__media img,
  .woocommerce .related-products ul li.product:focus-within .ec-card__media img {
    -webkit-transform: none;
            transform: none;
  }
}
.woocommerce ul.products li.product h2.woocommerce-loop-product__title,
.woocommerce .related-products ul li.product h2.woocommerce-loop-product__title {
  min-height: 0;
  margin: 0.75rem 0 0;
  padding: 0;
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
  font-size: 1.2rem !important;
  line-height: 1.3;
  letter-spacing: normal;
  text-transform: none;
  color: #333447 !important;
  -webkit-transform: none;
          transform: none;
}
@media screen and (max-width: 47.99em) {
  .woocommerce ul.products li.product h2.woocommerce-loop-product__title,
  .woocommerce .related-products ul li.product h2.woocommerce-loop-product__title {
    font-size: 1.05rem !important;
  }
}
.woocommerce ul.products li.product p.price,
.woocommerce .related-products ul li.product p.price {
  margin: 0.6rem 0 0.1rem;
  font-family: "Lato", Arial, sans-serif;
  font-weight: 400;
  font-size: 1rem !important;
  line-height: 1.4;
  color: #333447;
}
.woocommerce ul.products li.product p.price .amount,
.woocommerce ul.products li.product p.price ins,
.woocommerce .related-products ul li.product p.price .amount,
.woocommerce .related-products ul li.product p.price ins {
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
  text-decoration: none;
}
.woocommerce ul.products li.product p.price del .amount,
.woocommerce ul.products li.product p.price .ec-ppu .amount,
.woocommerce .related-products ul li.product p.price del .amount,
.woocommerce .related-products ul li.product p.price .ec-ppu .amount {
  font-family: "Lato", Arial, sans-serif;
  font-weight: 400;
  color: #666666;
}
.woocommerce ul.products li.product .ec-price,
.woocommerce .related-products ul li.product .ec-price {
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
  font-size: 1.2rem;
  color: #333447;
}
@media screen and (max-width: 47.99em) {
  .woocommerce ul.products li.product .ec-price,
  .woocommerce .related-products ul li.product .ec-price {
    font-size: 1.1rem;
  }
}
.woocommerce ul.products li.product .ec-ppu,
.woocommerce .related-products ul li.product .ec-ppu {
  display: inline-block;
  margin-left: 0.3em;
  font-family: "Lato", Arial, sans-serif;
  font-weight: 400;
  font-size: 0.8125rem;
  line-height: 1.4;
  white-space: nowrap;
  color: #666666;
}
.woocommerce ul.products li.product .wgm-info,
.woocommerce .related-products ul li.product .wgm-info {
  display: block;
  font-size: 0.75rem;
  line-height: 1.45;
  color: #666666;
}
.woocommerce ul.products li.product .wgm-info a,
.woocommerce .related-products ul li.product .wgm-info a {
  color: inherit !important;
  text-decoration: underline;
}
.woocommerce ul.products li.product a.button,
.woocommerce .related-products ul li.product a.button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  min-height: 44px;
  margin: 0.9rem 0 0;
  padding: 0.5rem 0.75rem;
  border: 1.5px solid #333447;
  border-radius: 6px;
  background: transparent;
  color: #333447 !important;
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
  font-size: 0.9375rem !important;
  line-height: 1.2;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.woocommerce ul.products li.product a.button:hover, .woocommerce ul.products li.product a.button:focus-visible,
.woocommerce .related-products ul li.product a.button:hover,
.woocommerce .related-products ul li.product a.button:focus-visible {
  background: #333447;
  color: #fff !important;
}
.woocommerce ul.products li.product a.button:focus-visible,
.woocommerce .related-products ul li.product a.button:focus-visible {
  outline: 2px solid #333447;
  outline-offset: 2px;
}
.woocommerce ul.products li.product a.button.loading,
.woocommerce .related-products ul li.product a.button.loading {
  opacity: 0.6;
}
.woocommerce ul.products li.product a.added_to_cart,
.woocommerce .related-products ul li.product a.added_to_cart {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  color: #333447 !important;
  text-decoration: underline;
}

.ec-price-note {
  clear: both;
  margin: 1.5rem 0 0;
  font-size: 0.8125rem;
  line-height: 1.5;
  text-align: center;
  color: #666666;
}
.ec-price-note a {
  color: inherit !important;
  text-decoration: underline;
}

.single-product .explorer-left-colum {
  position: relative;
}

.ec-notes--single {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
  pointer-events: none;
}
.ec-notes--single .ec-notes__item {
  margin: 0;
  padding: 4px 9px;
  border-radius: 4px;
  background: var(--ec-note-color, var(--ec-taste-neutral, #333447));
  -webkit-box-shadow: inset 0 0 0 1px var(--ec-note-border, transparent);
          box-shadow: inset 0 0 0 1px var(--ec-note-border, transparent);
  color: var(--ec-note-text, #fff);
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 1.2;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.ec-notes--single .ec-notes__item--main {
  padding: 5px 11px;
  font-size: 0.875rem;
}
.ec-notes--single .ec-notes__dot {
  display: none;
}
@media screen and (max-width: 47.99em) {
  .ec-notes--single {
    top: 8px;
    left: 8px;
    gap: 4px;
  }
  .ec-notes--single .ec-notes__item {
    padding: 3px 7px;
    font-size: 0.625rem;
  }
  .ec-notes--single .ec-notes__item--main {
    padding: 4px 8px;
    font-size: 0.6875rem;
  }
}

/* ==== Explorer Geschmackszeile Karten 11/2026 (sass/explorer/_product-card.scss) ==== */
/* Übersichten: Noten als Farbschilder unter dem Titel (wie auf der Produktseite), ohne Hover-Effekt. Produktseite unverändert. */
.woocommerce ul.products li.product .ec-notes.ec-notes--card {
  position: static;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
  margin: 0.4rem 0 0.65rem;
  padding: 0;
  pointer-events: none;
}

.woocommerce ul.products li.product .ec-notes--card .ec-notes__item {
  gap: 0;
  padding: 3px 8px !important;
  border-radius: 4px;
  background: var(--ec-note-color, var(--ec-taste-neutral, #333447)) !important;
  -webkit-box-shadow: inset 0 0 0 1px var(--ec-note-border, transparent) !important;
          box-shadow: inset 0 0 0 1px var(--ec-note-border, transparent) !important;
  color: var(--ec-note-text, #fff) !important;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-weight: 700;
  font-size: 0.6875rem !important;
  line-height: 1.2;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  -webkit-transition: none;
  transition: none;
}

.woocommerce ul.products li.product .ec-notes--card .ec-notes__dot {
  display: none;
}

.woocommerce ul.products li.product .ec-notes--card .ec-notes__label {
  max-width: none !important;
  overflow: visible;
  opacity: 1 !important;
}

/* Bild braucht auf Übersichten keinen Rand mehr für die Punkte */
.woocommerce:not(.single-product) ul.products li.product .ec-card__media img {
  width: 100%;
}

/* Einheitliche Linien je Reihe: Titel immer 2 Zeilen hoch (Schilder starten gleich),
   Preis an den unteren Rand (Preis und Button stehen auf einer Linie) */
.woocommerce ul.products li.product h2.woocommerce-loop-product__title,
.woocommerce .related-products ul li.product h2.woocommerce-loop-product__title {
  min-height: 2.6em;
  line-height: 1.3;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link .price,
.woocommerce .related-products ul li.product .woocommerce-loop-product__link .price {
  margin-top: auto;
  padding-top: 0.25rem;
}

/* VERGLEICH ?karte=quer (inc/shop-overview.php): Querkarte, 2 Karten pro Reihe (Handy 1).
   Oben Name, Unterzeile (Mischung · Herkunft) und Geschmacksschilder; darunter links Bild, rechts Fakten, Preis, Button.
   Der Produktlink endet im Theme vor dem Preis; darum ist die ganze Karte das Raster und der Link nur Hülle (display: contents). */
body.ec-karte--quer.woocommerce ul.products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem 1.5rem;
}

body.ec-karte--quer.woocommerce ul.products::before,
body.ec-karte--quer.woocommerce ul.products::after {
  display: none;
}

body.ec-karte--quer.woocommerce ul.products li.product.product {
  display: grid;
  grid-template-columns: minmax(0, 38%) minmax(0, 1fr);
  grid-template-areas: "title  title" "sub    sub" "media  notes" "media  intens" "media  facts" "media  price" "media  button";
  grid-template-rows: auto auto auto auto auto auto 1fr; /* Noten seit 2026-11-09 rechts über den Fakten */
  -webkit-column-gap: 1.25rem;
     -moz-column-gap: 1.25rem;
          column-gap: 1.25rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  width: 100% !important;
  margin: 0 !important;
  padding: 1.25rem 1.25rem 1.5rem;
  border: 1px solid #e2e2e2;
  text-align: left;
}

body.ec-karte--quer.woocommerce ul.products li.product .woocommerce-loop-product__link {
  display: contents;
}

body.ec-karte--quer.woocommerce ul.products li.product h2.woocommerce-loop-product__title {
  grid-area: title;
  min-height: 0;
  margin: 0;
  text-align: left;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-card__subline {
  grid-area: sub;
  margin: 0.2rem 0 1rem;
  font-size: 0.9375rem;
  line-height: 1.4;
  text-align: left;
  color: #666;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-card__media {
  grid-area: media;
  align-self: center;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-card__media img {
  width: 100%;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-notes.ec-notes--card {
  grid-area: notes;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin: 0 0 0.7rem;
}

/* WooCommerce-Clearfix (ul::before/::after) zählt im Flex als Element und rückt die Schilder 5px ein */
body.ec-karte--quer.woocommerce ul.products li.product .ec-notes.ec-notes--card::before,
body.ec-karte--quer.woocommerce ul.products li.product .ec-notes.ec-notes--card::after {
  display: none;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-card__facts {
  grid-area: facts;
  margin: 0 0 0.75rem;
  font-size: 0.875rem;
  line-height: 1.45;
  text-align: left;
  color: #404040;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-card__facts div {
  margin: 0 0 0.2rem;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-card__facts dt {
  display: inline;
  margin: 0 0.35rem 0 0;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #333447;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-card__facts dd {
  display: inline;
  margin: 0;
}

body.ec-karte--quer.woocommerce ul.products li.product .price {
  grid-area: price;
  margin: 0;
  padding: 0;
  text-align: left;
}

body.ec-karte--quer.woocommerce ul.products li.product a.button {
  grid-area: button;
  justify-self: start;
  width: auto;
  min-width: 10rem;
  margin: 0.75rem 0 0;
}

@media screen and (max-width: 47.99em) {
  body.ec-karte--quer.woocommerce ul.products {
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
  }
  body.ec-karte--quer.woocommerce ul.products li.product.product {
    grid-template-columns: minmax(0, 34%) minmax(0, 1fr);
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
    padding: 1rem 1rem 1.25rem;
  }
  body.ec-karte--quer.woocommerce ul.products li.product a.button {
    min-width: 0;
  }
}
/* Unterkategorie-Kacheln (z. B. Kaffeemaschine → Büro & Betrieb) bleiben einfache Kacheln */
body.ec-karte--quer.woocommerce ul.products li.product-category.product {
  display: block;
  text-align: center;
}

body.ec-karte--quer.woocommerce ul.products li.product-category.product a {
  display: block;
}

body.ec-karte--quer.woocommerce ul.products li.product-category.product img {
  width: auto;
  max-width: 100%;
  max-height: 140px;
  margin: 0 auto 0.75rem;
  -o-object-fit: contain;
     object-fit: contain;
}

/* Intensität auf der Querkarte: Bohne + große fette Zahl + „/6“ (grid-area intens, über den Fakten) */
body.ec-karte--quer.woocommerce ul.products li.product .ec-intensity {
  grid-area: intens;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  margin: 0 0 0.6rem;
  line-height: 1;
  color: #333447;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-intensity__bean {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 30px;
  height: auto;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-intensity__value {
  font-family: "Lato Black", "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 2.25rem;
  font-weight: 900;
  line-height: 1;
}

body.ec-karte--quer.woocommerce ul.products li.product .ec-intensity__max {
  -ms-flex-item-align: end;
      align-self: flex-end;
  padding-bottom: 0.15rem;
  font-family: "Lato", Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 400;
  color: #555;
}

/* Ausverkauft auf den Karten (2026-11-10): „Zurzeit ausverkauft“ statt Preis, Optik wie der Hinweis auf der Produktseite
   (Plugin explorer-back-in-stock: Creme, Akzentstreifen links, Versalien in Terrakotta) */
.woocommerce ul.products li.product .price .ec-soldout {
  display: block;
  padding: 9px 12px;
  background: #f9f7f5;
  border: 1px solid #e2e2e2;
  border-left: 3px solid #8a5a34;
  border-radius: 2px;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a5a34;
}

/* Produktseite: Upsells und „Ähnliche Produkte“ mit derselben Querkarte wie die Übersicht (2026-11-10).
   Eine Reihe mit zwei Karten nebeneinander; ab der dritten Karte seitlich scrollbar (Handy: eine Karte + Anschnitt). */
body.ec-karte--quer.single-product .related ul.products,
body.ec-karte--quer.single-product .upsells ul.products {
  grid-template-columns: none;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 1.5rem) / 2);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
  scroll-padding-left: 0;
  padding: 1rem 0;
  scrollbar-width: thin;
}

body.ec-karte--quer.single-product .related ul.products li.product,
body.ec-karte--quer.single-product .upsells ul.products li.product {
  scroll-snap-align: start;
}

/* Maus-Ziehen (js/card-scroller.js): Greif-Zeiger; beim Ziehen kein Einrasten und keine Textauswahl */
body.ec-karte--quer.single-product ul.products.is-draggable {
  cursor: -webkit-grab;
  cursor: grab;
}

body.ec-karte--quer.single-product ul.products.is-dragging {
  -ms-scroll-snap-type: none;
      scroll-snap-type: none;
  cursor: -webkit-grabbing;
  cursor: grabbing;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

body.ec-karte--quer.single-product ul.products.is-dragging a {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* Ab drei Karten schaut die nächste Karte am Rand hervor, damit klar ist: hier geht es seitlich weiter */
body.ec-karte--quer.single-product .related ul.products:has(> li:nth-child(3)),
body.ec-karte--quer.single-product .upsells ul.products:has(> li:nth-child(3)) {
  grid-auto-columns: calc((100% - 3rem) / 2.2);
}

@media screen and (max-width: 47.99em) {
  body.ec-karte--quer.single-product .related ul.products,
  body.ec-karte--quer.single-product .upsells ul.products,
  body.ec-karte--quer.single-product .related ul.products:has(> li:nth-child(3)),
  body.ec-karte--quer.single-product .upsells ul.products:has(> li:nth-child(3)) {
    grid-auto-columns: 86%;
    gap: 0.75rem;
  }
}
/* ==== Ende Explorer Geschmackszeile Karten 11/2026 ==== */
/* Karte ohne Unterzeile (z. B. Kaffeemaschinen: keine Mischung/Herkunft): Abstand unter dem Titel, sonst klebt der Inhalt daran (2026-11-10) */
body.ec-karte--quer.woocommerce ul.products li.product:not(:has(.ec-card__subline)) h2.woocommerce-loop-product__title {
  margin-bottom: 1rem;
}

/* Ausverkauft-Hinweis als Link zum Benachrichtigungsfeld (2026-11-10): zweite Zeile, nicht in Versalien */
.woocommerce ul.products li.product .price a.ec-soldout {
  text-decoration: none;
  color: #8a5a34 !important; /* ul.products .product a setzt schwarz mit !important */
}

.woocommerce ul.products li.product .price .ec-soldout__cta {
  display: block;
  margin-top: 0.35rem;
  font-family: "Lato", Arial, sans-serif;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: normal;
  text-transform: none;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.woocommerce ul.products li.product .price a.ec-soldout:hover .ec-soldout__cta,
.woocommerce ul.products li.product .price a.ec-soldout:focus-visible .ec-soldout__cta {
  text-decoration-thickness: 2px;
}

#ebis {
  scroll-margin-top: calc(var(--ec-nav-h, 72px) + 1rem);
}

.variations_form select.ec-var-select {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  border: 0 !important;
  white-space: nowrap !important;
}
.variations_form .ec-var-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.variations_form .ec-var-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 44px;
  min-height: 44px;
  margin: 0;
  padding: 0.5rem 1rem;
  border: 1.5px solid #333447;
  border-radius: 6px;
  background: #fff;
  color: #333447;
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
  font-size: 0.9375rem;
  line-height: 1.2;
  text-transform: none;
  letter-spacing: normal;
  -webkit-box-shadow: none;
          box-shadow: none;
  cursor: pointer;
  -webkit-transition: background-color 0.15s ease, color 0.15s ease;
  transition: background-color 0.15s ease, color 0.15s ease;
}
.variations_form .ec-var-button:hover {
  background: #f1f1f4;
}
.variations_form .ec-var-button.is-selected, .variations_form .ec-var-button.is-selected:hover {
  background: #333447;
  color: #fff;
}
.variations_form .ec-var-button:focus-visible {
  outline: 2px solid #333447;
  outline-offset: 2px;
}
.variations_form .ec-var-button.is-disabled {
  border-style: dashed;
  color: #666666;
  text-decoration: line-through;
  opacity: 0.55;
  cursor: not-allowed;
}
.variations_form .ec-var-button.is-disabled:hover {
  background: #fff;
}
.variations_form .ec-var-button.is-recommended {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2px;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}
.variations_form .ec-var-button .ec-var-button__tag {
  font-family: "Lato", Arial, sans-serif;
  font-weight: 400;
  font-size: 0.6875rem;
  line-height: 1;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 0.8;
}
@media (prefers-reduced-motion: reduce) {
  .variations_form .ec-var-button {
    -webkit-transition: none;
    transition: none;
  }
}
.variations_form .ec-var-help {
  margin: 0.6rem 0 0;
  font-size: 0.875rem;
  line-height: 1.45;
  color: #666666;
}
.variations_form .reset_variations {
  display: inline-block;
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  color: #666666 !important;
}
@media screen and (max-width: 47.99em) {
  .variations_form table.variations,
  .variations_form table.variations tbody,
  .variations_form table.variations tr,
  .variations_form table.variations th,
  .variations_form table.variations td {
    display: block;
    width: 100%;
  }
  .variations_form table.variations th {
    padding: 0 0 0.4rem;
    text-align: left;
  }
  .variations_form table.variations td {
    padding: 0 0 1rem;
  }
}

.single-product div.product .summary.entry-summary {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.single-product .explorer-right-column h1.product_title {
  margin: 0 0 0.75rem;
  font-size: 2.25rem;
  line-height: 1.15;
}
@media screen and (max-width: 47.99em) {
  .single-product .explorer-right-column h1.product_title {
    margin-top: 1rem;
    font-size: 1.75rem;
  }
}
.single-product .explorer-right-column .woocommerce-product-details__short-description p {
  margin-top: 0;
}

.ec-single-price {
  margin: 0.5rem 0 1.5rem;
}
.ec-single-price .single_variation,
.ec-single-price .woocommerce-variation.single_variation {
  padding-left: 0;
}
.ec-single-price .woocommerce-variation-availability p {
  margin: 0.4rem 0 0;
}

.ec-single-price--variable.is-variation-shown .ec-single-price__default {
  display: none;
}

.woocommerce div.product form.cart.variations_form table.variations th,
.woocommerce div.product form.cart.variations_form table.variations td {
  vertical-align: top;
}

@media screen and (min-width: 48em) {
  .woocommerce div.product form.cart.variations_form table.variations th {
    padding-top: 0.75rem;
  }
}
/* ==== Explorer Kaufbereich 11/2026 (sass/explorer/_product-buy.scss) ==== */
/* Akzentfarbe, Titel Vollkorn, Preisblock, Mengen-Buttons. Bis zum nächsten Sass-Lauf zusätzlich von Hand in style.css/style.min.css. */
:root {
  /* Orange des Themes (WP-Palette #ff6900), abgedunkelt: weiße Schrift 4,8:1, Hover 6,4:1 */
  --ec-accent: #bd5200;
  --ec-accent-hover: #9e4400;
  --ec-ink: #333447;
}

/* Titel: Vollkorn 600, normale Schreibweise (Jo, 11/2026). Akzent: Orange (Jo, 11/2026). */
.single-product .explorer-right-column h1.product_title {
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  text-transform: none;
  letter-spacing: normal;
  line-height: 1.15;
  color: var(--ec-ink);
}

/* Preisblock: Preis groß + fett, direkt danach (€/kg), darunter „Enthält 7 % MwSt. · zzgl. Versand“, dann Lieferzeit */
.ec-single-price .legacy-itemprop-offers,
.ec-single-price .woocommerce-variation-price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  row-gap: 0.2rem;
}

.ec-single-price .legacy-itemprop-offers::after,
.ec-single-price .woocommerce-variation-price::after {
  content: "";
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  height: 0;
}

.ec-single-price .price {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  margin: 0;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.1;
  color: var(--ec-accent);
}

.ec-single-price .price .amount,
.ec-single-price .price bdi {
  font-weight: 700;
  color: inherit;
}

.ec-single-price .price-per-unit {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  font-size: 0.9375rem;
  color: #666;
}

.ec-single-price .woocommerce-de_price_taxrate,
.ec-single-price .woocommerce_de_versandkosten {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  font-size: 0.8125rem;
  line-height: 1.4;
  color: #666;
}

.ec-single-price .woocommerce_de_versandkosten::before {
  content: "·";
  margin-right: 0.5rem;
}

.ec-single-price .woocommerce_de_versandkosten a {
  color: inherit;
}

.ec-single-price .shipping_de {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  font-size: 0.8125rem;
  color: #666;
}

.ec-single-price .shipping_de small {
  font-size: inherit;
}

/* Akzent-Buttons: In den Warenkorb, Weiter zur Kasse, Jetzt kaufen / Bestellen */
.single-product div.product form.cart .single_add_to_cart_button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout #payment #place_order {
  background: var(--ec-accent) !important;
  border-color: var(--ec-accent) !important;
  color: #fff !important;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-weight: 700;
}

.single-product div.product form.cart .single_add_to_cart_button:hover,
.single-product div.product form.cart .single_add_to_cart_button:focus-visible,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus-visible,
.woocommerce-checkout #payment #place_order:hover,
.woocommerce-checkout #payment #place_order:focus-visible {
  background: var(--ec-accent-hover) !important;
  border-color: var(--ec-accent-hover) !important;
  color: #fff !important;
}

.single-product div.product form.cart .single_add_to_cart_button.disabled,
.single-product div.product form.cart .single_add_to_cart_button:disabled {
  opacity: 0.5;
}

/* Menge + Warenkorb in einer Zeile */
.single-product div.product form.cart .woocommerce-variation-add-to-cart,
.single-product div.product form.cart:not(.variations_form) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 12px;
}

.single-product div.product form.cart div.quantity {
  float: none;
  margin: 0;
}

.single-product div.product form.cart .single_add_to_cart_button {
  float: none;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 200px;
          flex: 1 1 200px;
  min-height: 48px;
  margin: 0;
}

/* Mengenfeld −/+ (js/quantity-buttons.js) */
.quantity.ec-qty,
.woocommerce div.product form.cart div.quantity.ec-qty,
.woocommerce-cart table.cart div.quantity.ec-qty {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  border: 1.5px solid var(--ec-ink);
  border-radius: 6px;
  background: #f4e2d4;
  overflow: hidden;
}

.quantity.ec-qty input.qty {
  width: 3rem;
  min-height: 44px;
  margin: 0 !important;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  text-align: center;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-weight: 700;
  font-size: 1rem;
  color: var(--ec-ink);
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
          appearance: textfield;
}

.quantity.ec-qty input.qty::-webkit-outer-spin-button,
.quantity.ec-qty input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.quantity.ec-qty .ec-qty__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 44px;
  min-height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--ec-ink);
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
}

.quantity.ec-qty .ec-qty__btn:hover {
  background: #f1f1f4 !important;
  color: var(--ec-ink) !important;
}

.quantity.ec-qty .ec-qty__btn:focus-visible,
.quantity.ec-qty input.qty:focus-visible {
  outline: 2px solid var(--ec-ink);
  outline-offset: -2px;
}

.woocommerce-cart .quantity.ec-qty input.qty {
  width: 2.75rem;
}

@media screen and (max-width: 47.99em) {
  .ec-single-price .price {
    font-size: 1.75rem;
  }
}
/* Variantenpreis: woocommerce.css setzt .woocommerce .woocommerce-variation-price .price auf 1.1em !important */
.woocommerce .ec-single-price .woocommerce-variation-price .price {
  font-size: 2rem !important;
}

@media screen and (max-width: 47.99em) {
  .woocommerce .ec-single-price .woocommerce-variation-price .price {
    font-size: 1.75rem !important;
  }
}
/* Fakten Produktseite (Jo, 2026-11-09): Intensität + Zubereitung wie auf der Querkarte, unter der Kurzbeschreibung.
   VERGLEICH ?intensitaet=text: Intensität ausgeschrieben in der Liste statt Bohne + Zahl. */
.ec-single-facts {
  margin: 0 0 1.25rem;
}

.ec-single-facts .ec-intensity {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  margin: 0 0 0.6rem;
  line-height: 1;
  color: var(--ec-ink);
}

.ec-single-facts .ec-intensity__bean {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 36px;
  height: auto;
}

.ec-single-facts .ec-intensity__value {
  font-family: "Lato Black", "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 2.75rem;
  font-weight: 900;
  line-height: 1;
}

.ec-single-facts .ec-intensity__max {
  -ms-flex-item-align: end;
      align-self: flex-end;
  padding-bottom: 0.2rem;
  font-family: "Lato", Arial, sans-serif;
  font-size: 1.25rem;
  font-weight: 400;
  color: #555;
}

.ec-single-facts__list {
  margin: 0;
  font-size: 1rem;
  line-height: 1.45;
  color: #404040;
}

.ec-single-facts__list div {
  margin: 0 0 0.25rem;
}

.ec-single-facts__list dt {
  display: inline;
  margin: 0 0.4rem 0 0;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ec-ink);
}

.ec-single-facts__list dd {
  display: inline;
  margin: 0;
}

.ec-single-facts--text .ec-single-facts__list dd {
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-weight: 700;
  color: var(--ec-ink);
}

/* VERGLEICH, vor dem Upload entfernen: Umschalter Bohne | Text unten links */
.ec-compare-switch {
  position: fixed;
  left: 1rem;
  bottom: 1rem;
  z-index: 9999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
  padding: 0.3rem;
  border-radius: 999px;
  background: var(--ec-ink);
  -webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.25);
          box-shadow: 0 2px 10px rgba(0, 0, 0, 0.25);
  font-family: "Lato", Arial, sans-serif;
  font-size: 0.875rem;
}

.ec-compare-switch__label {
  padding: 0 0.5rem;
  color: #fff;
  opacity: 0.75;
}

.ec-compare-switch a {
  padding: 0.35rem 0.8rem;
  border-radius: 999px;
  color: #fff;
  text-decoration: none;
}

.ec-compare-switch a[aria-current] {
  background: #fff;
  color: var(--ec-ink);
  font-weight: 700;
}

/* Auf einen Blick (Paket 1, 2026-11-09): Kasten unter der Kurzbeschreibung, ersetzt Tab „Zusätzliche Informationen“.
   Intensität als Balken wie im Kaffee-Finder (Farbe Blauschwarz), Geschmack als Farbflächen wie auf den Karten. */
.ec-glance {
  clear: both;
  margin: 2rem 0 2.5rem;
  padding: 1.25rem 1.5rem 1rem;
  border: 1px solid #e3ded7;
  border-radius: 8px;
  background: #faf8f5;
}

.single-product .ec-glance h2.ec-glance__title {
  margin: 0 0 0.75rem;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ec-ink);
}

.ec-glance__list {
  margin: 0;
}

.ec-glance__row {
  display: grid;
  grid-template-columns: 7.5rem minmax(0, 1fr);
  -webkit-column-gap: 0.75rem;
     -moz-column-gap: 0.75rem;
          column-gap: 0.75rem;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  padding: 0.45rem 0;
  border-top: 1px solid #ebe6df;
}

.ec-glance__row:first-child {
  border-top: 0;
  padding-top: 0;
}

.ec-glance__row dt {
  margin: 0;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b5c6b;
}

.ec-glance__row dd {
  margin: 0;
  font-size: 1rem;
  line-height: 1.45;
  color: #2b2c3a;
}

.ec-glance__int {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  vertical-align: middle;
}

.ec-glance__bars {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 3px;
}

.ec-glance__bars i {
  width: 18px;
  height: 6px;
  border-radius: 3px;
  background: var(--ec-ink);
  opacity: 0.18;
}

.ec-glance__bars i.an {
  opacity: 1;
}

.ec-glance__int-num {
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--ec-ink);
}

.ec-notes.ec-notes--glance {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ec-notes--glance .ec-notes__item {
  margin: 0;
  padding: 3px 8px;
  border-radius: 4px;
  background: var(--ec-note-color, var(--ec-taste-neutral, #333447));
  -webkit-box-shadow: inset 0 0 0 1px var(--ec-note-border, transparent);
          box-shadow: inset 0 0 0 1px var(--ec-note-border, transparent);
  color: var(--ec-note-text, #fff);
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.ec-notes--glance .ec-notes__dot {
  display: none;
}

/* Unter der Beschreibung: ab Tablet zwei Spalten, damit die vielen Fakten nicht zu lang werden */
@media screen and (min-width: 48em) {
  .ec-glance__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    -webkit-column-gap: 2.5rem;
       -moz-column-gap: 2.5rem;
            column-gap: 2.5rem;
  }
  .ec-glance__row:nth-child(2) {
    border-top: 0;
    padding-top: 0;
  }
  .ec-glance__row {
    grid-template-columns: 9.5rem minmax(0, 1fr);
  }
}
@media screen and (max-width: 47.99em) {
  .ec-glance {
    padding: 0.85rem 1rem 0.7rem;
  }
  .ec-glance__row {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0.15rem;
  }
}
/* Beschreibung zum Aufklappen (2026-11-09): rechts unter dem Warenkorb, zugeklappt; ersetzt den Tab „Über diesen Kaffee“ */
.ec-more {
  margin: 1.75rem 0 0;
  border-top: 1px solid #e3ded7;
  border-bottom: 1px solid #e3ded7;
}

.ec-more__summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1rem;
  padding: 0.9rem 0;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--ec-ink);
  cursor: pointer;
  list-style: none;
}

.ec-more__summary::-webkit-details-marker {
  display: none;
}

/* Pfeil rechts, dreht beim Aufklappen */
.ec-more__summary::after {
  content: "";
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 0.55rem;
  height: 0.55rem;
  margin-right: 0.25rem;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  -webkit-transform: translateY(-25%) rotate(45deg);
          transform: translateY(-25%) rotate(45deg);
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}

.ec-more[open] > .ec-more__summary::after {
  -webkit-transform: translateY(25%) rotate(-135deg);
          transform: translateY(25%) rotate(-135deg);
}

.ec-more__summary:hover {
  color: var(--ec-accent);
}

.ec-more__summary:focus-visible {
  outline: 2px solid var(--ec-ink);
  outline-offset: 2px;
}

.ec-more__body {
  padding: 0 0 1rem;
  font-size: 1rem;
  line-height: 1.6;
  color: #2b2c3a;
}

.ec-more__body > :first-child {
  margin-top: 0;
}

.ec-more__body > :last-child {
  margin-bottom: 0;
}

@media (prefers-reduced-motion: reduce) {
  .ec-more__summary::after {
    -webkit-transition: none;
    transition: none;
  }
}
/* Überschriften Produktseite (2026-11-10), abgestimmt auf das Startseiten-Konzept (startseite/startseite-entwurf.html):
   Vollkorn 600, normale Schreibweise. H1 (Produktname) deutlich größer als die Abschnitts-H2 (Verhältnis ca. 1,4–1,6),
   vorher war die globale H2 (40 px, Großbuchstaben) größer als die H1 (36 px). */
.single-product .explorer-right-column h1.product_title {
  font-size: clamp(1.875rem, 1.2rem + 2vw, 2.875rem);
  text-wrap: balance;
}

.single-product .up-sells > h2,
.single-product .related > h2 {
  margin: 3rem 0 1.25rem;
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  font-size: clamp(1.5rem, 1.1rem + 1vw, 1.875rem);
  line-height: 1.15;
  letter-spacing: normal;
  text-transform: none;
  text-wrap: balance;
  color: var(--ec-ink);
}

/* ==== Ende Explorer Kaufbereich 11/2026 ==== */
.ec-ship-hint {
  margin: 0.75rem 0 0;
  font-size: 0.875rem;
  line-height: 1.4;
  color: #666666;
}

.ec-ship-hint strong {
  color: var(--ec-ink, #333447);
}

.ec-ship-hint__bar {
  display: block;
  height: 4px;
  margin-top: 0.4rem;
  border-radius: 2px;
  background: rgba(51, 52, 71, 0.12);
  overflow: hidden;
}

.ec-ship-hint__bar i {
  display: block;
  height: 100%;
  background: #333447;
}

/* ==== Explorer Hinweise 11/2026 (sass/explorer/_notices.scss) ==== */
/* WooCommerce-Meldungen (z. B. „… wurde Ihrem Warenkorb hinzugefügt“) als ruhige Karte.
   „body“ vorne, weil woocommerce.css nach style.css geladen wird. */
body .woocommerce-message,
body .woocommerce-info,
body .woocommerce-error {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem 1.25rem;
  margin: 0 0 2rem;
  padding: 1rem 1.25rem 1rem 3.75rem;
  background: #f9f7f5;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
  -webkit-box-shadow: 0 6px 18px -10px rgba(51, 52, 71, 0.28);
          box-shadow: 0 6px 18px -10px rgba(51, 52, 71, 0.28);
  color: #333447;
  -webkit-animation: ec-notice-in 0.45s cubic-bezier(0.16, 1, 0.3, 1);
          animation: ec-notice-in 0.45s cubic-bezier(0.16, 1, 0.3, 1);
  font-size: 1rem;
  line-height: 1.45;
  list-style: none;
}

body .woocommerce-error {
  display: block;
  background: #fdf6f5;
  border-color: #efd3cf;
}

@-webkit-keyframes ec-notice-in {
  from {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
    -webkit-box-shadow: 0 0 0 0 rgba(51, 52, 71, 0);
            box-shadow: 0 0 0 0 rgba(51, 52, 71, 0);
  }
}

@keyframes ec-notice-in {
  from {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
    -webkit-box-shadow: 0 0 0 0 rgba(51, 52, 71, 0);
            box-shadow: 0 0 0 0 rgba(51, 52, 71, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  body .woocommerce-message,
  body .woocommerce-info,
  body .woocommerce-error {
    -webkit-animation: none;
            animation: none;
  }
}
/* WooCommerce fokussiert die Meldung für Screenreader; der blaue Fokusrahmen ist dabei nur störend */
body .woocommerce-message:focus,
body .woocommerce-info:focus,
body .woocommerce-error:focus {
  outline: none;
}

body .woocommerce-message::after,
body .woocommerce-info::after,
body .woocommerce-error::after {
  content: none;
}

body .woocommerce-message::before,
body .woocommerce-info::before,
body .woocommerce-error::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1.25rem;
  width: 24px;
  height: 24px;
  margin-top: -12px;
  padding: 0;
  border-radius: 50%;
  background: #2e6b4f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 12.5l3.5 3.5 7.5-8' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/24px 24px no-repeat;
  -webkit-transform: none;
          transform: none;
}

body .woocommerce-info::before {
  background: #333447 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7.5' r='1.4' fill='%23fff'/%3E%3Cpath d='M12 11v6.5' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") center/24px 24px no-repeat;
}

body .woocommerce-error::before {
  top: 1rem;
  margin-top: 0;
  background: #b3261e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 6.5V13' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='16.8' r='1.4' fill='%23fff'/%3E%3C/svg%3E") center/24px 24px no-repeat;
}

body .woocommerce-error li {
  margin: 0 0 0.25rem;
}

body .woocommerce-error li:last-child {
  margin-bottom: 0;
}

/* Button („Warenkorb anzeigen“, „Weiter einkaufen“): steht im HTML vor dem Text, optisch rechts */
body .woocommerce-message .button,
body .woocommerce-info .button {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  float: none;
  margin: 0 0 0 auto;
  padding: 0.55rem 1.1rem;
  background: #000;
  border: 1.5px solid #000;
  border-radius: 6px;
  color: #fff !important;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-weight: 700;
  font-size: 0.9375rem;
  line-height: 1.2;
  white-space: nowrap;
}

body .woocommerce-message .button:visited,
body .woocommerce-info .button:visited {
  color: #fff !important;
}

body .woocommerce-message .button:hover,
body .woocommerce-message .button:focus-visible,
body .woocommerce-info .button:hover,
body .woocommerce-info .button:focus-visible {
  background: #333447 !important;
  border-color: #333447;
  color: #fff !important;
}

@media screen and (max-width: 47.99em) {
  body .woocommerce-message,
  body .woocommerce-info {
    padding-left: 3.25rem;
  }
  body .woocommerce-message .button,
  body .woocommerce-info .button {
    margin-left: 0;
  }
  body .woocommerce-message::before,
  body .woocommerce-info::before {
    top: 1rem;
    margin-top: 0;
  }
}
/* ==== Ende Explorer Hinweise 11/2026 ==== */
/* ==== Explorer Übersicht Kaffee 11/2026 (sass/explorer/_shop-overview.scss) ==== */
/* VERGLEICH: ?ansicht=wegweiser | regal | kompakt (inc/shop-overview.php). Nicht gewählte Varianten vor dem Upload entfernen. */
.ec-overview__intro {
  max-width: 62ch;
  margin: 0.25rem 0 1.75rem;
  font-size: 1.0625rem;
  line-height: 1.6;
  color: #404040;
}

/* Textlink, der den Kaffee-Finder öffnet (Theme-Buttons sind sonst schwarze Blöcke) */
body .ec-overview__finder-link {
  display: inline;
  margin: 0;
  padding: 0;
  background: none !important;
  border: 0;
  border-radius: 0;
  color: #333447 !important;
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

body .ec-overview__finder-link:hover {
  text-decoration-thickness: 2px;
}

/* ---- Wegweiser: Bild-Kacheln ---- */
.ec-overview-tiles ul {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
  gap: 16px;
  margin: 0 0 1rem;
  padding: 0;
  list-style: none;
}

.ec-overview-tiles li {
  margin: 0;
  padding: 0;
}

.ec-overview-tiles__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  padding: 0 0 1rem;
  background: #f9f7f5;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
  color: #333447;
  text-decoration: none;
  overflow: hidden;
  -webkit-transition: border-color 0.25s ease, -webkit-box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  transition: border-color 0.25s ease, -webkit-box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  transition: box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.25s ease, transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  transition: box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.25s ease, transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), -webkit-box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.ec-overview-tiles__link:hover,
.ec-overview-tiles__link:focus-visible {
  border-color: #333447;
  -webkit-box-shadow: 0 10px 22px -14px rgba(51, 52, 71, 0.45);
          box-shadow: 0 10px 22px -14px rgba(51, 52, 71, 0.45);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
  color: #333447;
}

.ec-overview-tiles__link:focus-visible {
  outline: 2px solid #333447;
  outline-offset: 2px;
}

.ec-overview-tiles__media {
  display: block;
  aspect-ratio: 4/3;
  margin-bottom: 0.75rem;
  background: #fff;
  overflow: hidden;
}

.ec-overview-tiles__img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.ec-overview-tiles__name {
  padding: 0 1rem;
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  font-size: 1.25rem;
  line-height: 1.2;
}

.ec-overview-tiles__teaser {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 0.3rem 1rem 0.6rem;
  font-size: 0.875rem;
  line-height: 1.45;
  color: #666;
}

.ec-overview-tiles__count {
  padding: 0 1rem;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.8125rem;
  color: #333447;
}

/* body … h2: eine Theme-Regel für Überschriften setzt den Abstand sonst auf 0 */
body .shop-content h2.ec-overview__all {
  margin: 3.5rem 0 1rem;
  font-size: 1.5rem;
}

/* ---- Kompakt: Leiste mit Unterkategorien ---- */
.ec-overview-chips {
  position: sticky;
  top: 0;
  z-index: 5;
  margin: 0 0 1.5rem;
  padding: 0.75rem 0;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(6px);
  border-bottom: 1px solid #e2e2e2;
}

.ec-overview-chips ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ec-overview-chips li {
  margin: 0;
  padding: 0;
}

body .ec-overview-chips__chip {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  min-height: 40px;
  margin: 0;
  padding: 0.4rem 0.95rem;
  background: #fff;
  border: 1.5px solid #333447;
  border-radius: 999px;
  color: #333447;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.9375rem;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}

body .ec-overview-chips__chip:hover,
body .ec-overview-chips__chip:focus-visible {
  background: #f1f1f4 !important;
  color: #333447 !important;
}

body .ec-overview-chips__chip.is-current {
  background: #333447;
  color: #fff;
  cursor: default;
}

body .ec-overview-chips__chip--finder {
  background: #f9f7f5;
  border-style: dashed;
}

.ec-overview-chips__count {
  font-family: "Lato", Arial, sans-serif;
  font-size: 0.8125rem;
  color: #666;
}

@media screen and (max-width: 47.99em) {
  /* Handy: eine Zeile zum Wischen statt mehrerer Zeilen */
  .ec-overview-chips ul {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .ec-overview-chips ul::-webkit-scrollbar {
    display: none;
  }
}
/* ---- Regal: je Unterkategorie ein Brett ---- */
.ec-shelf {
  margin: 0 0 3.5rem;
}

.ec-shelf__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.5rem 1.5rem;
  margin: 0 0 1.25rem;
  padding: 0 0 0.75rem;
  border-bottom: 1px solid #e2e2e2;
}

.ec-shelf__title {
  margin: 0;
  font-size: 1.75rem;
  line-height: 1.15;
}

.ec-shelf__teaser {
  margin: 0.3rem 0 0;
  font-size: 0.9375rem;
  color: #666;
}

.ec-shelf__more {
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.9375rem;
  color: #333447;
  text-decoration: underline;
  text-underline-offset: 3px;
  white-space: nowrap;
}

.ec-shelf__more:hover {
  text-decoration-thickness: 2px;
  color: #333447;
}

.ec-shelf ul.products {
  margin-bottom: 0;
}

@media (prefers-reduced-motion: reduce) {
  .ec-overview-tiles__link {
    -webkit-transition: none;
    transition: none;
  }
  .ec-overview-tiles__link:hover,
  .ec-overview-tiles__link:focus-visible {
    -webkit-transform: none;
            transform: none;
  }
}
/* Navigations-Styles des Themes setzen Versalien und Sperrung – hier normale Schreibweise */
.ec-overview-tiles,
.ec-overview-tiles *,
.ec-overview-chips,
.ec-overview-chips * {
  text-transform: none;
  letter-spacing: normal;
}

/* Keine passenden Kaffees unter den aktiven Filtern: ausgegraut, nicht klickbar */
.ec-overview-tiles__link.is-empty {
  opacity: 0.5;
  cursor: default;
}

.ec-overview-tiles__link.is-empty:hover {
  border-color: #e2e2e2;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transform: none;
          transform: none;
}

body .ec-overview-chips__chip.is-empty,
body .ec-overview-chips__chip.is-empty:hover {
  background: #fff !important;
  border-color: #c8c8cf;
  color: #8a8a8a !important;
  cursor: default;
}

/* ---- Filterleiste über den Produkten statt Spalte links ---- */
.shop-container.ec-shop-wide {
  grid-template-columns: minmax(0, 1fr);
}

.ec-filterbar {
  position: relative;
  margin: 0 0 1.75rem;
}

/* bis das Skript die Gruppen sortiert hat, nichts aufklappen lassen */
.ec-filterbar:not(.is-ready) .filter-list,
.ec-filterbar:not(.is-ready) .intensity-filter {
  display: none !important;
}

.ec-filterbar .filter-group {
  position: static;
  margin: 0;
  border: 0;
}

/* Knopf je Filter (Land, Intensität, …) */
body .ec-filterbar .filter-toggle {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  width: auto;
  min-height: 42px;
  margin: 0;
  padding: 0.45rem 1rem;
  background: #fff;
  border: 1.5px solid #333447;
  border-radius: 999px;
}

body .ec-filterbar .filter-toggle:hover,
body .ec-filterbar .filter-toggle:focus-visible {
  background: #f1f1f4 !important;
}

body .ec-filterbar .filter-toggle strong {
  color: #333447;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.9375rem;
  text-decoration: none;
}

body .ec-filterbar .filter-toggle .toggle-icon {
  color: #333447;
  font-size: 10px;
}

body .ec-filterbar .filter-group.has-active > .filter-toggle {
  background: #333447 !important;
}

body .ec-filterbar .filter-group.has-active > .filter-toggle strong,
body .ec-filterbar .filter-group.has-active > .filter-toggle .toggle-icon {
  color: #fff;
}

.ec-filterbar__chosen {
  font-family: "Lato", Arial, sans-serif;
}

/* Aufgeklappte Auswahl: Fläche unter der ganzen Leiste */
.ec-filterbar .filter-group.is-expanded .filter-list,
.ec-filterbar .filter-group.is-expanded .intensity-filter {
  position: absolute;
  z-index: 30;
  top: 100%;
  left: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  max-height: none;
  margin: 8px 0 0;
  padding: 1rem 1.25rem;
  background: #fff;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
  -webkit-box-shadow: 0 14px 30px -18px rgba(51, 52, 71, 0.45);
          box-shadow: 0 14px 30px -18px rgba(51, 52, 71, 0.45);
  -webkit-animation: ec-filter-in 0.3s cubic-bezier(0.16, 1, 0.3, 1);
          animation: ec-filter-in 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

@-webkit-keyframes ec-filter-in {
  from {
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px);
  }
}

@keyframes ec-filter-in {
  from {
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px);
  }
}
/* Auswahl-Chips */
.ec-filterbar .filter-list li {
  margin: 0;
}

body .ec-filterbar .filter-list li a,
body .ec-filterbar .filter-list li span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 38px;
  padding: 0.4rem 0.9rem;
  background: #fff;
  border: 1.5px solid #c8c8cf;
  border-radius: 999px;
  color: #333447;
  font-size: 0.9375rem;
  -webkit-transform: none;
          transform: none;
}

body .ec-filterbar .filter-list li a:hover:not(.disabled) {
  background: #f1f1f4;
  border-color: #333447;
  color: #333447;
  -webkit-transform: none;
          transform: none;
}

body .ec-filterbar .filter-list li a.active {
  background: #333447;
  border-color: #333447;
  color: #fff;
  font-weight: 700;
}

body .ec-filterbar .filter-list li a.disabled,
body .ec-filterbar .filter-list li span.disabled {
  background: #fff;
  border-style: dashed;
  color: #9a9aa3;
  opacity: 1;
}

.ec-filterbar .intensity-all {
  color: #333447;
  font-size: 0.9375rem;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Aktive Filter und Zurücksetzen am Ende der Reihe */
.ec-filterbar .active-filters {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  background: none;
  border: 0;
}

.ec-filterbar .active-filters-title {
  display: none;
}

body .ec-filterbar .reset-filters {
  margin: 0;
  padding: 0.4rem 0.2rem;
  background: none;
  border: 0;
  color: #333447;
  font-size: 0.875rem;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Leiste: alles in einer Reihe; Reihenfolge per CSS (Markup kommt fertig vom Server, kein Umbau nach dem Laden) */
.ec-filterbar--leiste {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  padding: 0 0 1rem;
  border-bottom: 1px solid #e2e2e2;
}

.ec-filterbar--leiste .active-filters {
  margin-left: auto;
}

.ec-filterbar--leiste > [data-group=kategorie] {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.ec-filterbar--leiste > [data-group=geschmack] {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.ec-filterbar--leiste > [data-group=intensitaet] {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

.ec-filterbar--leiste > [data-group=zubereitungsart] {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}

.ec-filterbar--leiste > [data-group=land] {
  -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
          order: 5;
}

.ec-filterbar--leiste > [data-group=besonderheit] {
  -webkit-box-ordinal-group: 7;
      -ms-flex-order: 6;
          order: 6;
}

.ec-filterbar--leiste > .reset-filters {
  -webkit-box-ordinal-group: 8;
      -ms-flex-order: 7;
          order: 7;
}

.ec-filterbar--leiste > .active-filters {
  -webkit-box-ordinal-group: 9;
      -ms-flex-order: 8;
          order: 8;
}

.ec-filterbar--leiste > script {
  display: none;
}

@media screen and (max-width: 47.99em) {
  .ec-filterbar--leiste .active-filters {
    margin-left: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ec-filterbar .filter-group.is-expanded .filter-list,
  .ec-filterbar .filter-group.is-expanded .intensity-filter {
    -webkit-animation: none;
            animation: none;
  }
}
/* Intensitäts-Bohnen auf Creme kräftiger (Standard #ddd ist dort kaum sichtbar) */
body .ec-filterbar .intensity-bean {
  color: #a39c92 !important;
}

body .ec-filterbar .intensity-bean.filled,
body .ec-filterbar .intensity-bean.active {
  color: #333447 !important;
}

body .ec-filterbar .intensity-bean.disabled {
  color: #d6d1ca !important;
  opacity: 1;
}

body .ec-filterbar .intensity-all {
  padding: 0;
  background: none;
  border: 0;
}

/* Kompakt: 5 Spalten erst auf breiten Bildschirmen, sonst wie das Theme (1 / 2 / 3) */
body.ec-overview--kompakt ul.products.columns-5 li.product {
  width: 100%;
  margin-right: 0;
}

@media screen and (min-width: 24em) {
  body.ec-overview--kompakt ul.products.columns-5 li.product {
    width: 50%;
  }
}
@media screen and (min-width: 48em) {
  body.ec-overview--kompakt ul.products.columns-5 li.product {
    width: 33.333%;
  }
}
@media screen and (min-width: 64em) {
  body.ec-overview--kompakt ul.products.columns-5 li.product {
    width: 20%;
  }
}
/* Geschmacksfilter: Knöpfe in der Gruppenfarbe wie die Schilder auf den Karten (Farben: _taste-colors.scss);
   gewählt mit dunklem Ring und Häkchen, ohne Treffer blass */
body .ec-filterbar .filter-list li a.ec-taste-chip,
body .ec-filterbar .filter-list li span.ec-taste-chip {
  gap: 0.4rem;
  background: var(--ec-note-color, #333447);
  border-color: var(--ec-note-color, #333447);
  -webkit-box-shadow: inset 0 0 0 1px var(--ec-note-border, transparent);
          box-shadow: inset 0 0 0 1px var(--ec-note-border, transparent);
  color: var(--ec-note-text, #fff);
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-weight: 700;
}

body .ec-filterbar .filter-list li a.ec-taste-chip:hover:not(.disabled),
body .ec-filterbar .filter-list li a.ec-taste-chip:focus-visible {
  background: var(--ec-note-color, #333447);
  border-color: #333447;
  color: var(--ec-note-text, #fff);
  -webkit-filter: brightness(0.92);
          filter: brightness(0.92);
}

body .ec-filterbar .filter-list li .ec-taste-chip__dot {
  display: none;
}

body .ec-filterbar .filter-list li a.ec-taste-chip.active {
  background: var(--ec-note-color, #333447);
  border-color: var(--ec-note-color, #333447);
  color: var(--ec-note-text, #fff);
  -webkit-box-shadow: 0 0 0 2px #fff, 0 0 0 4px #333447;
          box-shadow: 0 0 0 2px #fff, 0 0 0 4px #333447;
}

body .ec-filterbar .filter-list li a.ec-taste-chip.active::before {
  content: "✓";
  font-size: 0.875rem;
  line-height: 1;
}

body .ec-filterbar .filter-list li span.ec-taste-chip.disabled {
  border-style: solid;
  opacity: 0.35;
}

/* Wegweiser mit aktivem Filter: kompakte Zeile der passenden Arten statt Kacheln (bleibt nicht oben stehen) */
.ec-overview-chips.ec-overview-chips--inline {
  position: static;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px 12px;
  margin: 0 0 1rem;
  padding: 0;
  background: none;
  backdrop-filter: none;
  border: 0;
}

.ec-overview-chips__label {
  font-size: 0.875rem;
  color: #666;
}

@media screen and (max-width: 47.99em) {
  .ec-overview-chips--inline ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    overflow-x: visible;
  }
}
/* ==== Ende Explorer Übersicht Kaffee 11/2026 ==== */
.term-description h2,
.term-description h3,
.term-description h4 {
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0;
}

.term-description h2 {
  font-size: 2rem;
  line-height: 1.2;
}

.term-description h3 {
  font-size: 1.5rem;
  line-height: 1.25;
}

.term-description h4 {
  font-size: 1.25rem;
  line-height: 1.3;
}

@media (max-width: 600px) {
  .term-description h2 {
    font-size: 1.625rem;
  }
  .term-description h3 {
    font-size: 1.3125rem;
  }
}
@media (max-width: 600px) {
  .woocommerce-products-header__title {
    font-size: 2rem;
    letter-spacing: 0;
    overflow-wrap: break-word;
    -ms-hyphens: auto;
        hyphens: auto;
  }
}
/* Shop-Ebene (/shop/): Wegweiser zu Kaffee & Espresso, Equipment und den übrigen obersten Kategorien (2026-11-10).
   Wenige, große Kacheln statt der schmalen Kaffee-Kacheln; lange Wörter („Schokoladenflocken“) trennen sich. */
.ec-overview-tiles--shop ul {
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

.ec-overview-tiles--shop .ec-overview-tiles__name {
  overflow-wrap: break-word;
  -ms-hyphens: auto;
      hyphens: auto;
}

/* ==== Explorer Konto 11/2026 (sass/explorer/_account.scss) ==== */
/* Mein Konto, nicht angemeldet: Anmelden + Kundenkonto anlegen als zwei gleich hohe Karten auf einer Linie,
   Passwort vergessen/zurücksetzen als einzelne Karte. Farben wie Shop: Blauschwarz #333447, Creme #f9f7f5.
   #customer_login bzw. .ec-account-card im Selektor: woocommerce.css (lädt nach style.css) färbt Felder sonst hellblau. */
body.woocommerce-account #customer_login {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  max-width: 960px;
  margin: 0 0 4rem;
}

body.woocommerce-account #customer_login::before,
body.woocommerce-account #customer_login::after {
  display: none;
}

body.woocommerce-account #customer_login > .u-column1,
body.woocommerce-account #customer_login > .u-column2,
body.woocommerce-account form.lost_reset_password {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  float: none;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 2rem 2rem 2.25rem;
  background: #f9f7f5;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
}

body.woocommerce-account form.lost_reset_password {
  max-width: 520px;
  margin-bottom: 4rem;
}

body.woocommerce-account #customer_login h2 {
  margin: 0 0 0.35rem;
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  font-size: 1.625rem;
  line-height: 1.2;
  letter-spacing: normal;
  text-transform: none;
  color: #333447;
}

.ec-account-hint {
  margin: 0 0 1.5rem;
  font-size: 0.9375rem;
  line-height: 1.5;
  color: #666;
}

/* Formulare: Rahmen von WooCommerce weg, die Karte ist der Rahmen */
body.woocommerce-account #customer_login form.woocommerce-form,
body.woocommerce-account form.lost_reset_password {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
}

body.woocommerce-account form.lost_reset_password {
  padding: 2rem 2rem 2.25rem;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
}

body.woocommerce-account #customer_login .form-row,
body.woocommerce-account form.lost_reset_password .form-row {
  float: none;
  width: 100%;
  margin: 0 0 1.1rem;
  padding: 0;
}

body.woocommerce-account #customer_login label,
body.woocommerce-account form.lost_reset_password label {
  display: block;
  margin: 0 0 0.4rem;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.9375rem;
  line-height: 1.3;
  color: #333447;
}

body.woocommerce-account #customer_login label .required,
body.woocommerce-account form.lost_reset_password label .required {
  color: #b3261e;
  text-decoration: none;
}

body.woocommerce-account #customer_login input.input-text,
body.woocommerce-account form.lost_reset_password input.input-text {
  width: 100%;
  height: 48px;
  margin: 0;
  padding: 0 0.95rem;
  background: #fff;
  border: 1.5px solid #c8c8cf;
  border-radius: 6px;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-family: "Lato", Arial, sans-serif;
  font-size: 1rem;
  color: #333447;
  -webkit-transition: border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
  transition: border-color 0.15s ease, -webkit-box-shadow 0.15s ease;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, -webkit-box-shadow 0.15s ease;
}

body.woocommerce-account #customer_login input.input-text:hover,
body.woocommerce-account form.lost_reset_password input.input-text:hover {
  border-color: #9a9aa3;
}

body.woocommerce-account #customer_login input.input-text:focus,
body.woocommerce-account form.lost_reset_password input.input-text:focus {
  border-color: #333447;
  outline: none;
  -webkit-box-shadow: 0 0 0 3px rgba(51, 52, 71, 0.15);
          box-shadow: 0 0 0 3px rgba(51, 52, 71, 0.15);
}

/* Passwort-Feld mit Augen-Knopf */
body.woocommerce-account #customer_login .password-input {
  display: block;
  position: relative;
}

body.woocommerce-account #customer_login .show-password-input {
  top: 50%;
  right: 0.75rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/* Theme-Element .clear (padding 10px 0, _myaccount.scss) schiebt sonst den Anmelden-Button hoch */
body.woocommerce-account #customer_login form .clear {
  display: none;
}

/* Checkboxen (Angemeldet bleiben, Datenschutz): normale Schrift */
body.woocommerce-account #customer_login .woocommerce-form__label-for-checkbox,
body.woocommerce-account #customer_login .woocommerce-privacy-policy-text,
body.woocommerce-account #customer_login .form-row label.checkbox,
body.woocommerce-account #customer_login p.form-row label:has(input[type=checkbox]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.6rem;
  margin: 0;
  font-family: "Lato", Arial, sans-serif;
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.5;
  color: #404040;
}

body.woocommerce-account #customer_login input[type=checkbox] {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 18px;
  height: 18px;
  margin: 0.15rem 0 0;
  accent-color: #333447;
}

body.woocommerce-account #customer_login a:not(.button),
body.woocommerce-account form.lost_reset_password a:not(.button) {
  color: #333447;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Buttons: Blauschwarz, volle Breite, unten in der Karte */
body.woocommerce-account #customer_login button.button,
body.woocommerce-account form.lost_reset_password button.button {
  display: block;
  float: none;
  width: 100%;
  min-height: 50px;
  margin: 0.5rem 0 0;
  padding: 0.75rem 1.25rem;
  background: #333447 !important;
  border: 1.5px solid #333447;
  border-radius: 6px;
  color: #fff !important;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
}

body.woocommerce-account #customer_login button.button:hover,
body.woocommerce-account #customer_login button.button:focus-visible,
body.woocommerce-account form.lost_reset_password button.button:hover,
body.woocommerce-account form.lost_reset_password button.button:focus-visible {
  background: #1f2030 !important;
  border-color: #1f2030;
}

/* Anmelden: „Angemeldet bleiben“ über dem Button, Button unten, „Passwort vergessen?“ darunter */
body.woocommerce-account #customer_login .woocommerce-form-login .form-row:not(.form-row-wide) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 1rem;
  margin-top: auto;
}

body.woocommerce-account #customer_login .woocommerce-form-login__rememberme {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  padding: 0;
}

/* „Passwort vergessen?“ rechts neben „Angemeldet bleiben“, damit beide Buttons am Kartenboden auf einer Linie stehen
   (Button 50px + Abstand 1rem darüber) */
body.woocommerce-account #customer_login form.woocommerce-form-login {
  position: relative;
}

body.woocommerce-account #customer_login .woocommerce-form-login .form-row:not(.form-row-wide) {
  margin-bottom: 0;
}

/* Clearfix-Pseudoelemente würden im Flex-Layout je einen Abstand (gap) bekommen */
body.woocommerce-account #customer_login .form-row::before,
body.woocommerce-account #customer_login .form-row::after {
  display: none;
}

body.woocommerce-account #customer_login .woocommerce-LostPassword {
  position: absolute;
  right: 0;
  bottom: calc(50px + 1.5rem + 10px); /* Button 50px + margin-top 0.5rem + gap 1rem, mittig zur Checkbox-Zeile */
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.5;
}

body.woocommerce-account #customer_login .woocommerce-form-register .woocommerce-form-register__submit {
  margin-top: auto;
}

body.woocommerce-account #customer_login .woocommerce-form-register p:last-of-type {
  margin-top: auto;
  margin-bottom: 0;
}

body.woocommerce-account form.lost_reset_password > p:first-child {
  margin: 0 0 1.25rem;
  color: #404040;
}

@media screen and (max-width: 47.99em) {
  body.woocommerce-account #customer_login {
    grid-template-columns: minmax(0, 1fr);
  }
  body.woocommerce-account #customer_login > .u-column1,
  body.woocommerce-account #customer_login > .u-column2,
  body.woocommerce-account form.lost_reset_password {
    padding: 1.5rem 1.25rem 1.75rem;
  }
}
/* ---- Angemeldet: Kontomenü als Pillen, Inhalte als Karten ---- */
html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
  width: 100% !important;
  float: none;
  margin: 0 0 1.75rem;
  color: inherit;
}

html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation li {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
}

html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation li a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 42px;
  padding: 0.45rem 1.1rem;
  background: #fff;
  border: 1.5px solid #333447;
  border-radius: 999px;
  color: #333447;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: normal;
  text-transform: none;
  text-decoration: none;
}

html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation li a:hover {
  background: #f1f1f4;
  color: #333447;
}

html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation li.is-active a {
  background: #333447;
  color: #fff;
}

html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout {
  margin-left: auto;
}

html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a {
  border-color: transparent;
  color: #666;
  text-decoration: underline;
  text-underline-offset: 3px;
}

body.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
  float: none;
  width: 100%;
  max-width: 960px;
  margin: 0 0 4rem;
  padding: 2rem;
  background: #f9f7f5;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
  color: #404040;
}

body.woocommerce-account .woocommerce-MyAccount-content > p:first-of-type {
  font-size: 1.0625rem;
}

body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.ec-account-tiles__link) {
  padding: 0;
  color: #333447;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3 {
  margin: 0 0 0.75rem;
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  font-size: 1.375rem;
  letter-spacing: normal;
  text-transform: none;
  color: #333447;
}

/* Übersicht: Kacheln zu den Kontobereichen */
.ec-account-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 12px;
  margin: 0 0 1.5rem;
  padding: 0;
  list-style: none;
}

.ec-account-tiles li {
  margin: 0;
}

body.woocommerce-account .woocommerce-MyAccount-content a.ec-account-tiles__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.3rem;
  height: 100%;
  padding: 1.1rem 1.2rem;
  background: #fff;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
  color: #333447;
  font-weight: 400;
  text-decoration: none;
  -webkit-transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
}

body.woocommerce-account .woocommerce-MyAccount-content a.ec-account-tiles__link:hover,
body.woocommerce-account .woocommerce-MyAccount-content a.ec-account-tiles__link:focus-visible {
  border-color: #333447;
  -webkit-box-shadow: 0 10px 22px -16px rgba(51, 52, 71, 0.5);
          box-shadow: 0 10px 22px -16px rgba(51, 52, 71, 0.5);
}

.ec-account-tiles__name {
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  font-size: 1.2rem;
}

.ec-account-tiles__text {
  font-size: 0.875rem;
  line-height: 1.45;
  color: #666;
}

/* Tabellen (Bestellungen) */
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table {
  width: 100%;
  margin: 0 0 1rem;
  background: #fff;
  border: 1px solid #e2e2e2;
  border-radius: 8px;
  border-collapse: separate;
  overflow: hidden;
}

body.woocommerce-account .woocommerce-MyAccount-content table.shop_table th {
  background: #f1f1f4;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #333447;
}

body.woocommerce-account .woocommerce-MyAccount-content table.shop_table th,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table td {
  padding: 0.75rem 1rem;
  border: 0;
  border-top: 1px solid #ececf0;
}

/* Buttons im Kontobereich: Blauschwarz statt schwarzer Kästen */
body.woocommerce-account .woocommerce-MyAccount-content a.button,
body.woocommerce-account .woocommerce-MyAccount-content button.button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 42px;
  margin: 0.25rem 0.25rem 0.25rem 0;
  padding: 0.5rem 1.1rem;
  background: #333447 !important;
  border: 1.5px solid #333447;
  border-radius: 6px;
  color: #fff !important;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.9375rem;
  font-weight: 700;
  text-decoration: none;
}

body.woocommerce-account .woocommerce-MyAccount-content a.button:hover,
body.woocommerce-account .woocommerce-MyAccount-content button.button:hover {
  background: #1f2030 !important;
}

/* Adressen nebeneinander als weiße Karten */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::after {
  display: none;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address {
  float: none;
  width: auto;
  max-width: none;
  padding: 1.25rem;
  background: #fff;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address {
  font-style: normal;
  line-height: 1.6;
}

/* Formulare (Adresse/Kontodaten bearbeiten): Felder wie auf der Anmeldeseite */
body.woocommerce-account .woocommerce-MyAccount-content .form-row label {
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.9375rem;
  color: #333447;
}

html body.woocommerce-account .woocommerce-MyAccount-content input.input-text,
html body.woocommerce-account .woocommerce-MyAccount-content select,
body.woocommerce-account .woocommerce-MyAccount-content .select2-container .select2-selection--single {
  height: 46px;
  padding: 0 0.9rem;
  background: #fff;
  border: 1.5px solid #c8c8cf;
  border-radius: 6px;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #333447;
}

html body.woocommerce-account .woocommerce-MyAccount-content input.input-text:focus,
html body.woocommerce-account .woocommerce-MyAccount-content select:focus {
  border-color: #333447;
  outline: none;
  -webkit-box-shadow: 0 0 0 3px rgba(51, 52, 71, 0.15);
          box-shadow: 0 0 0 3px rgba(51, 52, 71, 0.15);
}

body.woocommerce-account .woocommerce-MyAccount-content fieldset {
  margin: 1.5rem 0;
  padding: 1.25rem;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
}

@media screen and (max-width: 47.99em) {
  body.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
    padding: 1.25rem;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses {
    grid-template-columns: minmax(0, 1fr);
  }
  html body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout {
    margin-left: 0;
  }
}
/* ==== Ende Explorer Konto 11/2026 ==== */
.product .woocommerce-tabs {
  margin: 4em 0;
}
.product .woocommerce-tabs .tabs.wc-tabs {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding-left: 0;
}
.product .woocommerce-tabs .tabs.wc-tabs {
  border-bottom: 1px solid #ccc;
  list-style: none;
  margin: 0;
}
.product .woocommerce-tabs .tabs.wc-tabs li {
  border: 1px solid #ccc;
  display: inline-block;
  font-size: 0.9rem;
  margin-bottom: -1px;
  -webkit-transition: background 0.2s ease;
  transition: background 0.2s ease;
  padding: 0 0 1px 0;
}
.product .woocommerce-tabs .tabs.wc-tabs li a {
  background: #ddd;
  border: 0;
  color: var(--wp--preset--color--charcoal-1);
  display: block;
  font-size: var(--wp--preset--font-size--normal);
  padding: 0.64rem 1.25rem;
  text-decoration: none;
}
.product .woocommerce-tabs .tabs.wc-tabs li.active {
  padding: 0;
  border-bottom: 0 !important;
  font-weight: bold;
}
.product .woocommerce-tabs .tabs.wc-tabs li.active a {
  background: white !important;
}
.product .type-plugin span#advanced.displayed ~ #section-links .tabs li#tablink-advanced,
.product .type-plugin span#developers:target ~ #section-links .tabs li#tablink-developers,
.product .type-plugin span#installation:target ~ #section-links .tabs li#tablink-installation,
.product .type-plugin span#reviews:not(:target) ~ span#installation:not(:target) ~ span#developers:not(:target) ~ span#advanced:not(.displayed) ~ #section-links .tabs li#tablink-description,
.product .type-plugin span#reviews:target ~ #section-links .tabs li#tablink-reviews {
  background: #fff;
  border: 1px solid var(--wp--preset--color--light-grey-1);
  border-bottom: 0;
  padding-bottom: 1px;
}

.woocommerce-product-attributes__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 2em;
}

.woocommerce-product-attributes__item > * {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  flex-grow: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  margin: 0;
}

.woocommerce-product-attribute__label {
  text-align: left;
  font-weight: normal;
  margin-right: 1em;
}

.woocommerce-product-attribute__value {
  text-align: right;
  font-weight: normal;
  margin-left: 1em;
}
.woocommerce-product-attribute__value p {
  margin: 0;
}

.woocommerce-product-attribute__image {
  height: auto;
  width: auto;
  text-align: right;
}
.woocommerce-product-attribute__image img {
  height: 100%;
  width: auto;
}

.woocommerce-product-attributes-item--attribute_pa_intensitaet .woocommerce-product-attribute__image {
  width: 220px;
}

.woocommerce-product-attributes__item.woocommerce-product-attribute.woocommerce-product-attributes-item--attribute_pa_land_bild {
  display: none;
}

.woocommerce-product-attribute__separator {
  position: relative;
  height: 0;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  border-bottom: 2px dotted #434345;
  border-style: dotted;
  border-bottom-width: 1px;
  border-top-width: 0;
  border-right-width: 0;
  border-left-width: 0;
}

.variations {
  margin-bottom: 1em;
}
.variations .variation__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1em;
}
.variations .variation__label {
  font-family: "Vollkorn SemiBold", "Vollkorn", serif;
  font-size: 1.3em;
  margin-bottom: 0.5em;
  text-align: left;
  width: 90px;
}
.variations .variation__value {
  font-size: 1em;
}
.variations .variation__reset-button {
  margin-left: 90px;
}
.variations .variation__reset-button button {
  background: black;
  border: 1px solid #000;
  border-radius: 1px;
  color: white !important;
  -webkit-box-shadow: none;
          box-shadow: none;
  text-decoration: none;
  padding: 5px 10px;
  text-align: center;
}

.woocommerce-variation.single_variation {
  padding-left: 90px;
}

.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled .quantity {
  max-width: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  margin-right: 10px;
}
.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled .quantity .qty {
  width: 100%;
  max-width: 100%;
  text-align: center;
}
.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled button {
  background: black;
  border: 1px solid #000;
  border-radius: 1px;
  color: white !important;
  -webkit-box-shadow: none;
          box-shadow: none;
  text-decoration: none;
  padding: 5px 10px;
  text-align: center;
}

.active-filters {
  margin-bottom: 20px;
  padding: 15px;
  background-color: #f5f5f5;
  border-radius: 4px;
  border-left: 4px solid #333447;
}
.active-filters .active-filters-title {
  font-weight: bold;
  font-size: 0.9rem;
  color: #333447;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.active-filters .active-filters-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.active-filters .active-filters-tags .filter-tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  padding: 6px 12px;
  background-color: #333447;
  color: white;
  text-decoration: none;
  border-radius: 20px;
  font-size: 0.9rem;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.active-filters .active-filters-tags .filter-tag:hover {
  background-color: rgb(29.6803278689, 30.262295082, 41.3196721311);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
          box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}
.active-filters .active-filters-tags .filter-tag:hover .filter-tag-close {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}
.active-filters .active-filters-tags .filter-tag .filter-tag-close {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.2rem;
  font-weight: bold;
  cursor: pointer;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
  margin-left: 2px;
}
.active-filters .active-filters-tags .filter-tag .filter-tag-close:hover {
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
}

@media (max-width: 768px) {
  .active-filters {
    padding: 12px;
  }
  .active-filters .active-filters-title {
    font-size: 0.85rem;
  }
  .active-filters .active-filters-tags {
    gap: 6px;
  }
  .active-filters .active-filters-tags .filter-tag {
    font-size: 0.85rem;
    padding: 5px 10px;
  }
}
.woocommerce-cart .wp-block-heading {
  display: none;
}
.woocommerce-cart table.cart {
  width: 100%;
  font-size: 1.125rem;
}
.woocommerce-cart table.cart td.actions {
  text-align: right;
}
.woocommerce-cart table.cart td.actions .coupon {
  float: left;
}
.woocommerce-cart table.cart .quantity .qty {
  width: 5em;
}
.woocommerce-cart .coupon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.woocommerce-cart .cart .button,
.woocommerce-cart .cart input.button {
  float: none;
  padding: 0.5em 1.5em;
  margin: 0 0.5em;
}
.woocommerce-cart .cart .button:hover,
.woocommerce-cart .cart input.button:hover {
  background: #333447;
  color: white !important;
}
.woocommerce-cart .coupon.ec-coupon-collapsed {
  display: none !important;
}
.woocommerce-cart .ec-coupon-toggle {
  float: left;
  line-height: 2.5;
  text-decoration: underline;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:visited,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus {
  color: #fff !important;
}

.woocommerce .cart-collaterals,
.woocommerce-page .cart-collaterals {
  width: 100%;
  min-height: 100%;
  clear: both;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.woocommerce .cart-collaterals h2,
.woocommerce-page .cart-collaterals h2 {
  font-size: 1.5em;
  margin-bottom: 1em;
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
}
.woocommerce .cart-collaterals .cross-sells,
.woocommerce-page .cart-collaterals .cross-sells {
  width: 50%;
}
.woocommerce .cart-collaterals .cross-sells ul li,
.woocommerce-page .cart-collaterals .cross-sells ul li {
  display: none;
  width: 50%;
  margin-top: 0 !important;
  padding-top: 0;
  padding-left: 0;
}
.woocommerce .cart-collaterals .cross-sells ul li:nth-child(1),
.woocommerce-page .cart-collaterals .cross-sells ul li:nth-child(1) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.woocommerce .cart-collaterals .cross-sells ul li:nth-child(2),
.woocommerce-page .cart-collaterals .cross-sells ul li:nth-child(2) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
  width: 50%;
  margin-left: auto;
}

.checkout h3 {
  font-size: 1.5em;
  margin-bottom: 1em;
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
}

.woocommerce-checkout #wc-stripe-express-checkout-button-separator {
  clear: both;
  width: 100%;
  margin: 1.25em 0 2.5em !important;
  padding-bottom: 1.25em;
  border-bottom: 1px solid #e2e2e2;
  color: #666;
  font-size: 0.95rem;
}

.woocommerce-checkout #customer_details.col2-set .col-1,
.woocommerce-checkout #customer_details.col2-set .col-2 {
  float: none;
  width: 100%;
  max-width: none;
}

.woocommerce-checkout #customer_details.col2-set .col-2 {
  margin-top: 1.5em;
}

.woocommerce-checkout #order_review_heading {
  clear: both;
  margin-top: 2em;
}

.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review table.shop_table {
  float: none;
  width: 100%;
  max-width: none;
}

.woocommerce-checkout #payment .place-order {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.woocommerce-checkout #payment .place-order #p-shipping-service-provider {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}

.woocommerce-checkout #payment .place-order #place_order {
  -ms-flex-item-align: end;
      align-self: flex-end;
}

.woocommerce-checkout div.woocommerce {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.woocommerce-checkout .form-row:not(:has(select)):has(> .woocommerce-input-wrapper > strong) {
  display: none;
}

.woocommerce-checkout .form-row.ec-col-plz {
  width: 32%;
}

.woocommerce-checkout .form-row.ec-col-city {
  width: 64%;
}

.woocommerce-checkout .form-row.ec-hidden {
  display: none !important;
}

.woocommerce-checkout #order_review td.product-name,
.woocommerce-checkout #order_review th.product-name {
  position: relative;
  padding-left: 3.5em;
}

.woocommerce-checkout #order_review .ec-qty {
  position: absolute;
  left: 1em;
  top: 1.1em;
  font-weight: 700;
  white-space: nowrap;
}

.woocommerce-checkout #ship-to-different-address {
  margin-bottom: 1.25em;
  text-transform: none;
  letter-spacing: normal;
  font-size: 1.05rem;
  font-family: inherit;
  font-weight: 400;
}

.woocommerce-checkout #ship-to-different-address label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6em;
  cursor: pointer;
}

.woocommerce-checkout #ship-to-different-address-checkbox {
  width: 1.4em;
  height: 1.4em;
  margin: 0;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  cursor: pointer;
}

/**
 * Text-Bild-Teaser Block
 * Responsive card with image, headline, description and link
 * Includes zoom hover effect
 */
.explorer-text-image-teaser {
  display: block;
  border-radius: 8px;
  overflow: hidden;
  background-color: #fff;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  -webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
}
.explorer-text-image-teaser:hover {
  -webkit-transform: translateY(-5px);
          transform: translateY(-5px);
  -webkit-box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
          box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}
.explorer-text-image-teaser a {
  text-decoration: none;
  color: inherit;
  display: block;
}
.explorer-text-image-teaser a:hover {
  text-decoration: none;
}
.explorer-text-image-teaser .teaser-image {
  position: relative;
  width: 100%;
  height: 250px;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
.explorer-text-image-teaser:hover .explorer-text-image-teaser .teaser-image {
  -webkit-transform: scale(1.08);
          transform: scale(1.08);
}
.explorer-text-image-teaser .teaser-headline {
  margin: 0;
  padding: 15px;
  font-weight: 600;
  line-height: 1;
}
.explorer-text-image-teaser .teaser-headlineh2 {
  font-size: 1.8em;
}
.explorer-text-image-teaser .teaser-headlineh3 {
  font-size: 1.5em;
}
.explorer-text-image-teaser .teaser-headlineh4 {
  font-size: 1.25em;
}
.explorer-text-image-teaser .teaser-headlineh5 {
  font-size: 1.1em;
}
.explorer-text-image-teaser .teaser-headlineh6 {
  font-size: 1em;
}
.explorer-text-image-teaser .teaser-description {
  padding: 0 15px 15px;
  margin: 0;
  font-size: 0.95em;
  line-height: 1.5;
  color: #555;
}
.explorer-text-image-teaser.headline-outside .teaser-image {
  height: 200px;
}
.explorer-text-image-teaser.headline-outside .teaser-headline {
  padding: 15px 15px 10px;
  color: #333447;
}
.explorer-text-image-teaser.headline-outside .teaser-description {
  padding: 0 15px 15px;
  color: #666;
}
.explorer-text-image-teaser.headline-outside a:hover .teaser-headline {
  color: #333;
}
.explorer-text-image-teaser.headline-outside a:hover .teaser-description {
  color: #333;
}
.explorer-text-image-teaser.headline-inside .teaser-image {
  height: 280px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  background-attachment: fixed;
  background-blend-mode: overlay;
}
.explorer-text-image-teaser.headline-inside .teaser-image::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 120px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(60%, rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0.6)));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 60%, rgba(0, 0, 0, 0.6) 100%);
  pointer-events: none;
  z-index: 1;
}
.explorer-text-image-teaser.headline-inside .teaser-headline {
  position: relative;
  z-index: 2;
  color: #fff;
  padding: 20px 15px 15px;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}
.explorer-text-image-teaser.headline-inside .teaser-headline h2,
.explorer-text-image-teaser.headline-inside .teaser-headline h3,
.explorer-text-image-teaser.headline-inside .teaser-headline h4,
.explorer-text-image-teaser.headline-inside .teaser-headline h5,
.explorer-text-image-teaser.headline-inside .teaser-headline h6 {
  color: #fff;
  margin: 0;
  padding: 0;
}
.explorer-text-image-teaser.headline-inside .teaser-description {
  display: none;
}
.explorer-text-image-teaser.headline-inside a:hover .teaser-headline {
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 768px) {
  .explorer-text-image-teaser .teaser-image {
    height: 200px;
  }
  .explorer-text-image-teaser.headline-inside .teaser-image {
    height: 220px;
  }
  .explorer-text-image-teaser .teaser-headline {
    padding: 12px;
  }
  .explorer-text-image-teaser .teaser-headlineh2 {
    font-size: 1.5em;
  }
  .explorer-text-image-teaser .teaser-headlineh3 {
    font-size: 1.3em;
  }
  .explorer-text-image-teaser .teaser-headlineh4 {
    font-size: 1.1em;
  }
  .explorer-text-image-teaser .teaser-description {
    padding: 0 12px 12px;
    font-size: 0.9em;
  }
}
@media screen and (max-width: 480px) {
  .explorer-text-image-teaser {
    border-radius: 4px;
  }
  .explorer-text-image-teaser .teaser-image {
    height: 150px;
  }
  .explorer-text-image-teaser.headline-inside .teaser-image {
    height: 180px;
  }
  .explorer-text-image-teaser.headline-inside .teaser-image::before {
    height: 100px;
  }
  .explorer-text-image-teaser .teaser-headline {
    padding: 10px;
    font-size: 0.9em;
  }
  .explorer-text-image-teaser .teaser-headlineh4 {
    font-size: 1em;
  }
  .explorer-text-image-teaser .teaser-description {
    padding: 0 10px 10px;
    font-size: 0.85em;
  }
}

.wp-block-explorer-text-image-teaser.editor-preview {
  max-width: 400px;
  margin: 0 auto;
}

.grid--stortiment {
  gap: 2em;
  margin-top: 2em;
}

.site-header {
  height: 200px;
  border-bottom: 2px solid #efefef;
  position: relative;
  z-index: 10;
  text-align: center;
  background: url("assets/images/tiki-und-bohnen.png") no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .site-header {
    height: 180px;
  }
}

.site-header__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 3em;
  padding-bottom: 3em;
}

.site-header__center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  gap: 50% 50% !important;
  position: relative;
  min-width: 200px;
  min-height: 50px;
}

.site-header__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
  padding: 0;
  height: auto;
  position: absolute;
  z-index: 99;
  width: 100px;
  left: -150px;
}
@media screen and (max-width: 900px) {
  .site-header__logo {
    width: 80px;
    left: -80px;
  }
}
@media screen and (max-width: 800px) {
  .site-header__logo {
    width: 80px;
    left: -70px;
  }
}
@media screen and (min-width: 900px) {
  .site-header__logo img {
    height: auto;
    width: 90px !important;
  }
}

.site-header__burger-menu {
  display: none;
  position: absolute;
  width: 100px;
  right: -100px;
  top: 10px;
}

.site-header__personal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
  padding: 0;
  max-width: 20%;
  width: 20%;
  height: auto;
  position: absolute;
  right: 0;
  width: 100px;
  right: -150px;
  top: 10px;
}
@media screen and (max-width: 900px) {
  .site-header__personal {
    width: 90px;
    right: -80px;
  }
}
@media screen and (max-width: 800px) {
  .site-header__personal {
    width: 90px;
    right: -70px;
  }
}
@media screen and (max-width: 768px) {
  .site-header__personal {
    width: 80px;
    right: 115px;
  }
}
.site-header__personal .wp-block-woocommerce-customer-account .icon {
  height: 40px;
  width: auto;
}
.site-header__personal .wp-block-woocommerce-customer-account .label {
  display: none;
}
.site-header__personal .wcmenucart-wrapper {
  padding-top: 3px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-header__personal .wcmenucart-wrapper .woocommerce-Price-amount {
  padding-left: 10px;
}
@media screen and (max-width: 1024px) {
  .site-header__personal .wcmenucart-wrapper .woocommerce-Price-amount {
    display: none;
  }
}
.site-header__personal .wcmenucart-wrapper .woocommerce-Price-amount bdi .woocommerce-Price-currencySymbol {
  padding-right: 5px;
}

.site-header__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding-bottom: 0 !important;
  padding-bottom: var(--wp--custom--gap--vertical);
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

.wp-block-woocommerce-customer-account .icon {
  margin-right: -5px;
  height: 25px;
}

.wc-block-mini-cart a {
  color: black;
}

.wc-block-mini-cart__quantity-badge {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

.wc-block-mini-cart__button .wc-block-mini-cart__icon {
  height: 1.5em;
  margin: 0;
  width: 1.5em;
}

.wc-block-mini-cart__button .wc-block-mini-cart__icon {
  height: 3em !important;
  width: 3em !important;
}

.wc-block-mini-cart__icon {
  display: block;
  height: 2em;
  margin: -0.25em;
  width: 2em;
}

.wc-block-mini-cart__button .wc-block-mini-cart__icon {
  height: 3em !important;
  width: 3em !important;
}

:where(.wc-block-mini-cart__badge) {
  background-color: transparent;
  color: transparent;
}

:where(.wc-block-mini-cart__badge) {
  background-color: black !important;
  color: white !important;
}

.wc-block-mini-cart__badge {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.875em;
  font-weight: 600;
  height: 1.4285714286em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 100%;
  margin-left: -44%;
  min-width: 1.4285714286em;
  padding: 0 0.25em;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  white-space: nowrap;
  z-index: 1;
}

h1.stage__center {
  font-size: 2.5em;
  color: white;
  background-color: black;
  height: 100%;
}

.header__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: black;
  color: white;
  font-size: 0.8em;
  width: 100%;
  max-width: 100% !important;
  padding: 0.5em 0;
}
.header__info a {
  color: white;
}
.header__info .wp-block-outermost-icon-block svg {
  margin-right: 0.5em;
  fill: white;
  width: 20px;
}
.header__info {
  fill: white;
  display: none;
}

.header__info-wrapper {
  gap: 10px;
}

.wp-block-search {
  width: 100%;
}
.wp-block-search.wp-block-search__button-inside .wp-block-search__button {
  margin-left: 0;
}
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper {
  height: 100%;
  border: 1px solid black;
  padding: 0;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  width: 100%;
}
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper:after {
  content: url("assets/images/search.svg");
  width: 15px;
  height: 15px;
  position: absolute;
  left: 10px;
  left: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.wp-block-search .wp-block-search__input {
  width: 100%;
  padding: 3px 10px 3px 40px !important;
  border: none;
}
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button:not(.has-background):not(.has-text-color):hover, .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button:not(.has-background):not(.has-text-color):focus, .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button:not(.has-background):not(.has-text-color).has-focus,
.wp-block-search .wp-block-search__button:not(.has-background):not(.has-text-color):hover,
.wp-block-search .wp-block-search__button:not(.has-background):not(.has-text-color):focus,
.wp-block-search .wp-block-search__button:not(.has-background):not(.has-text-color).has-focus {
  --wp--custom--button--color--text: var(--wp--custom--button--hover--color--text);
  --wp--custom--button--color--background: var(--wp--custom--button--hover--color--background);
  --wp--custom--button--border--color: var(--wp--custom--button--hover--border--color);
  opacity: 1;
  color: var(--wp--custom--button--color--text);
  background-color: var(--wp--custom--button--color--background);
  border-color: currentcolor;
}
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button:not(.has-background):not(.has-text-color):hover svg, .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button:not(.has-background):not(.has-text-color):focus svg, .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button:not(.has-background):not(.has-text-color).has-focus svg,
.wp-block-search .wp-block-search__button:not(.has-background):not(.has-text-color):hover svg,
.wp-block-search .wp-block-search__button:not(.has-background):not(.has-text-color):focus svg,
.wp-block-search .wp-block-search__button:not(.has-background):not(.has-text-color).has-focus svg {
  fill: var(--wp--custom--button--color--text);
}
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button:not(.has-background):not(.has-text-color):hover, .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button:not(.has-background):not(.has-text-color):focus, .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button:not(.has-background):not(.has-text-color).has-focus,
.wp-block-search .wp-block-search__button:not(.has-background):not(.has-text-color):hover,
.wp-block-search .wp-block-search__button:not(.has-background):not(.has-text-color):focus,
.wp-block-search .wp-block-search__button:not(.has-background):not(.has-text-color).has-focus {
  border-color: var(--wp--custom--button--border--color);
}
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button.has-icon,
.wp-block-search .wp-block-search__button.has-icon {
  line-height: 0;
}
.wp-block-search .wp-block-search__input::-webkit-input-placeholder {
  color: var(--wp--custom--form--color--text);
  opacity: 0.66;
}
.wp-block-search .wp-block-search__input::-moz-placeholder {
  color: var(--wp--custom--form--color--text);
  opacity: 0.66;
}
.wp-block-search .wp-block-search__input:-ms-input-placeholder {
  color: var(--wp--custom--form--color--text);
  opacity: 0.66;
}
.wp-block-search .wp-block-search__input::-ms-input-placeholder {
  color: var(--wp--custom--form--color--text);
  opacity: 0.66;
}
.wp-block-search .wp-block-search__input::placeholder {
  color: var(--wp--custom--form--color--text);
  opacity: 0.66;
}
.wp-block-search {
  /* Block Styles */
}
.wp-block-search.is-style-small-search {
  --wp--custom--button--typography--font-size: calc(
    0.8 * var(--wp--preset--font-size--small)
  );
}
.wp-block-search.is-style-small-search .wp-block-search__input {
  padding: calc(0.5 * var(--wp--custom--form--padding));
}

.stage {
  overflow: hidden;
  border-bottom: 3px solid black;
  border-top: 3px solid black;
  margin: 0 !important;
}
.stage .wp-block-group__inner-container {
  position: relative;
  min-height: 60vh;
  height: 60vh;
}
.stage__main {
  position: relative;
  z-index: 1;
  margin: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  height: 100%;
}
.stage__main img {
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  height: 100%;
  width: 100%;
}
.stage__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  z-index: 3;
  top: 10vh;
  width: 100%;
  max-width: 100%;
  max-height: 68%;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
@media screen and (max-width: 768px) {
  .stage__top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    top: 5vh;
    max-height: 100%;
    height: 100%;
  }
}
.stage__top figure {
  text-align: center;
}
.stage__left {
  width: 20%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .stage__left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.stage__center {
  width: 30%;
}
@media screen and (max-width: 768px) {
  .stage__center {
    width: 50%;
  }
}
.stage__center {
  height: 100%;
}
.stage__center img {
  max-width: 425px;
  width: 100%;
  height: auto;
}
.stage__right {
  width: 20%;
  height: 100%;
}

.page-template-page-product-category .stage__top {
  max-height: 100%;
  height: 100%;
  top: unset;
  bottom: 0;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.page-template-page-product-category h1.stage__center {
  height: auto;
  width: auto;
}

/*--------------------------------------------------------------
# Blog Hero Section — Split-Layout (Bild/Text)
--------------------------------------------------------------*/
.blog-hero {
  width: 100%;
  margin: 0;
  padding: 0;
}

.blog-hero--split {
  background-color: #f9f7f5;
  padding: 56px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (max-width: 768px) {
  .blog-hero--split {
    padding: 32px 20px 40px;
  }
}

.blog-hero__inner {
  max-width: 1120px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 56px;
}
@media (max-width: 768px) {
  .blog-hero__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 0;
  }
}

.blog-hero__media {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 45%;
          flex: 0 0 45%;
  margin: 0;
  padding: 0;
}
@media (max-width: 1024px) {
  .blog-hero__media {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 40%;
            flex: 0 0 40%;
  }
}
@media (max-width: 768px) {
  .blog-hero__media {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
}

.blog-hero__media-frame {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  padding: 10px;
  border-radius: 10px;
  -webkit-box-shadow: 0 16px 32px rgba(51, 52, 71, 0.18);
          box-shadow: 0 16px 32px rgba(51, 52, 71, 0.18);
  overflow: hidden;
  aspect-ratio: 4/5;
}
@media (max-width: 768px) {
  .blog-hero__media-frame {
    aspect-ratio: 16/10;
    padding: 8px;
  }
}

.blog-hero__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
}
@supports ((-o-object-position: var(--header-focal)) or (object-position: var(--header-focal))) {
  .blog-hero__image {
    -o-object-position: var(--header-focal, center);
       object-position: var(--header-focal, center);
  }
}

.blog-hero__content {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 18px;
}
@media (max-width: 768px) {
  .blog-hero__content {
    padding-top: 28px;
  }
}

.blog-hero__badge {
  display: inline-block;
  -ms-flex-item-align: start;
      align-self: flex-start;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 13px;
  border-radius: 6px;
}
.blog-hero__badge--wissen {
  background-color: #333447;
  color: #fff;
}
.blog-hero__badge--aktuelles {
  background-color: #8a5a34;
  color: #fff;
}

.blog-hero__title {
  margin: 0;
  font-size: 42px;
  font-weight: 500;
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  text-transform: initial;
  letter-spacing: normal;
  line-height: 1.2;
  color: #333447;
}
@media (max-width: 1024px) {
  .blog-hero__title {
    font-size: 34px;
  }
}
@media (max-width: 480px) {
  .blog-hero__title {
    font-size: 26px;
  }
}

.blog-hero__excerpt {
  margin: 0;
  max-width: 440px;
  font-family: "Lato", Arial, sans-serif;
  font-size: 17px;
  line-height: 1.65;
  color: #555;
}

.blog-hero__date-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  margin-top: 4px;
}

.blog-hero__date-rule {
  width: 28px;
  height: 1px;
  background-color: #8a5a34;
}

.blog-hero__date {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a5a34;
}

.blog-hero__author {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #333447;
}

.blog-hero__meta-sep {
  color: #8a5a34;
}

/* Autorenkasten unter Blogartikeln */
.author-box {
  max-width: 720px;
  margin: 3em auto 1em;
  padding: 24px 28px;
  background-color: #f9f7f5;
  border-left: 3px solid #8a5a34;
  border-radius: 6px;
}
.author-box p {
  margin: 0;
}
.author-box__label {
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a5a34;
}
.author-box__name {
  margin-top: 4px !important;
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  font-size: 1.3em;
  color: #333447;
}
.author-box__bio {
  margin-top: 8px !important;
  line-height: 1.65;
  color: #555;
}

/*--------------------------------------------------------------
# Blog Teasers Section
--------------------------------------------------------------*/
.blog-teasers {
  width: 100%;
  margin: 80px 0 0 0;
  padding: 60px 0;
  background-color: #f9f7f5;
  border-top: 1px solid #e2e2e2;
}
.blog-teasers.archive-teasers {
  margin: 0;
  padding: 40px 0 60px;
  min-height: 50vh;
}

.blog-teasers__container {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 20px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}
@media (max-width: 1024px) {
  .blog-teasers__container {
    gap: 30px;
    padding: 0 30px;
  }
}
@media (max-width: 768px) {
  .blog-teasers__container {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 0 20px;
  }
}
.blog-teasers__container--homepage {
  grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 1440px) {
  .blog-teasers__container--homepage {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 1024px) {
  .blog-teasers__container--homepage {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .blog-teasers__container--homepage {
    grid-template-columns: 1fr;
  }
}
.blog-teasers__container--archive {
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  padding: 0 20px 60px;
}
@media (max-width: 1440px) {
  .blog-teasers__container--archive {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 1024px) {
  .blog-teasers__container--archive {
    grid-template-columns: repeat(2, 1fr);
    padding: 0 30px 60px;
  }
}
@media (max-width: 768px) {
  .blog-teasers__container--archive {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 0 20px 40px;
  }
}
@media (max-width: 480px) {
  .blog-teasers__container--archive {
    grid-template-columns: 1fr;
    padding: 0 15px 30px;
  }
}

.blog-teaser {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  background-color: white;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  -webkit-transition: -webkit-box-shadow 0.3s ease, -webkit-transform 0.3s ease;
  transition: -webkit-box-shadow 0.3s ease, -webkit-transform 0.3s ease;
  transition: box-shadow 0.3s ease, transform 0.3s ease;
  transition: box-shadow 0.3s ease, transform 0.3s ease, -webkit-box-shadow 0.3s ease, -webkit-transform 0.3s ease;
  text-decoration: none;
  color: inherit;
}
.blog-teaser:hover {
  -webkit-box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
          box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}
@media (max-width: 768px) {
  .blog-teaser:hover {
    -webkit-transform: none;
            transform: none;
  }
}

.blog-teaser__image {
  width: 100%;
  height: 280px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  background-color: #e2e2e2;
}
@media (max-width: 768px) {
  .blog-teaser__image {
    height: 240px;
  }
}
@media (max-width: 480px) {
  .blog-teaser__image {
    height: 200px;
  }
}
.blog-teasers__container--homepage .blog-teaser__image {
  height: 200px;
}
@media (max-width: 1024px) {
  .blog-teasers__container--homepage .blog-teaser__image {
    height: 220px;
  }
}
@media (max-width: 768px) {
  .blog-teasers__container--homepage .blog-teaser__image {
    height: 240px;
  }
}

.blog-teaser__content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 30px;
}
@media (max-width: 768px) {
  .blog-teaser__content {
    padding: 24px;
  }
}
@media (max-width: 480px) {
  .blog-teaser__content {
    padding: 20px;
  }
}
.blog-teasers__container--homepage .blog-teaser__content {
  padding: 20px;
}
@media (max-width: 1024px) {
  .blog-teasers__container--homepage .blog-teaser__content {
    padding: 18px;
  }
}

.blog-teaser__title {
  margin: 0 0 16px 0;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.3;
  color: #333447;
}
@media (max-width: 768px) {
  .blog-teaser__title {
    font-size: 20px;
    margin-bottom: 12px;
  }
}
@media (max-width: 480px) {
  .blog-teaser__title {
    font-size: 18px;
  }
}
.blog-teasers__container--homepage .blog-teaser__title {
  font-size: 18px;
}
@media (max-width: 1024px) {
  .blog-teasers__container--homepage .blog-teaser__title {
    font-size: 16px;
  }
}

.blog-teaser__excerpt {
  margin: 0 0 20px 0;
  font-size: 16px;
  line-height: 1.6;
  color: #666;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media (max-width: 768px) {
  .blog-teaser__excerpt {
    font-size: 15px;
    margin-bottom: 16px;
  }
}

.blog-teaser__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  font-size: 13px;
  color: #333447;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-top: auto;
}

.blog-teaser__date {
  display: block;
}

.blog-teasers__heading-wrapper {
  max-width: 1440px;
  margin: 0 auto;
  padding: 40px 20px 0;
}
@media (max-width: 1024px) {
  .blog-teasers__heading-wrapper {
    padding: 30px 30px 0;
  }
}
@media (max-width: 768px) {
  .blog-teasers__heading-wrapper {
    padding: 20px 20px 0;
  }
}
.archive-teasers .blog-teasers__heading-wrapper {
  padding-top: 20px;
}
@media (max-width: 1024px) {
  .archive-teasers .blog-teasers__heading-wrapper {
    padding-top: 15px;
  }
}

.blog-teasers__heading {
  margin: 0 0 40px 0;
  font-size: 48px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: initial;
  color: #333447;
  line-height: 1.2;
}
@media (max-width: 1024px) {
  .blog-teasers__heading {
    font-size: 42px;
    margin-bottom: 30px;
  }
}
@media (max-width: 768px) {
  .blog-teasers__heading {
    font-size: 36px;
    margin-bottom: 24px;
  }
}
@media (max-width: 480px) {
  .blog-teasers__heading {
    font-size: 28px;
    margin-bottom: 20px;
  }
}

.blog-teasers__section {
  letter-spacing: 0;
}

/*--------------------------------------------------------------
# Startseite: Aktuelle Beiträge
--------------------------------------------------------------*/
.startseite-beitraege {
  width: 100%;
  margin: 80px 0 48px 0;
  padding: 60px 0 72px;
  background-color: #f9f7f5;
  border-top: 1px solid #e2e2e2;
  border-bottom: 1px solid #e2e2e2;
}

.startseite-beitraege__heading-wrapper {
  padding-bottom: 40px;
}
@media (max-width: 768px) {
  .startseite-beitraege__heading-wrapper {
    padding-bottom: 24px;
  }
}

.startseite-beitraege__eyebrow {
  margin: 0 0 14px 0;
  font-size: 13px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #8a8a8a;
}

.startseite-beitraege__heading {
  margin: 0;
  font-size: 42px;
  font-weight: 500;
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  text-transform: initial;
  line-height: 1.2;
  color: #333447;
}
@media (max-width: 768px) {
  .startseite-beitraege__heading {
    font-size: 32px;
  }
}

.startseite-beitraege__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 48px;
}
@media (max-width: 1024px) {
  .startseite-beitraege__container {
    gap: 32px;
  }
}
@media (max-width: 768px) {
  .startseite-beitraege__container {
    gap: 24px;
  }
}

.startseite-beitrag {
  display: block;
  text-decoration: none;
  color: inherit;
}

/* Featured post */
.startseite-beitrag--featured {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 560px;
          flex: 1 1 560px;
  min-width: 300px;
}

.startseite-beitrag__media {
  position: relative;
}
.startseite-beitrag__media::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 110px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.35)), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0));
  pointer-events: none;
}

.startseite-beitrag--featured .startseite-beitrag__image {
  width: 100%;
  height: 380px;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  background-color: #e2e2e2;
}
@media (max-width: 768px) {
  .startseite-beitrag--featured .startseite-beitrag__image {
    height: 260px;
  }
}

.startseite-beitrag__badge {
  display: inline-block;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 13px;
  border-radius: 6px;
}
.startseite-beitrag__badge--wissen {
  background-color: #333447;
  color: #fff;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}
.startseite-beitrag__badge--aktuelles {
  background-color: #8a5a34;
  color: #fff;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.startseite-beitrag--featured .startseite-beitrag__badge {
  position: absolute;
  top: 20px;
  left: 20px;
}

.startseite-beitrag__content {
  padding-top: 24px;
  max-width: 540px;
}

.startseite-beitrag__date {
  display: block;
  margin-bottom: 12px;
  font-size: 13px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #8a8a8a;
}

.startseite-beitrag--featured .startseite-beitrag__title {
  margin: 0 0 14px 0;
  font-size: 30px;
  font-weight: 500;
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  text-transform: initial;
  line-height: 1.28;
  color: #333447;
}
@media (max-width: 768px) {
  .startseite-beitrag--featured .startseite-beitrag__title {
    font-size: 24px;
  }
}

.startseite-beitrag__excerpt {
  margin: 0 0 16px 0;
  font-size: 16px;
  line-height: 1.6;
  color: #666;
}

.startseite-beitrag__readmore {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  min-height: 44px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 10px 20px;
  border-radius: 6px;
  background-color: #8a5a34;
  color: #fff;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.startseite-beitrag__readmore .fa-arrow-right {
  -webkit-transition: translate 0.2s ease;
  transition: translate 0.2s ease;
}

.startseite-beitrag--featured:hover .startseite-beitrag__readmore {
  background-color: #333447;
  color: #fff;
}
.startseite-beitrag--featured:hover .startseite-beitrag__readmore .fa-arrow-right {
  translate: 4px 0;
}

/* Side list */
.startseite-beitraege__list {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 320px;
          flex: 1 1 320px;
  min-width: 280px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.startseite-beitrag--list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 18px;
  padding: 22px 0;
  border-bottom: 1px solid #e2e2e2;
}
.startseite-beitrag--list-item:first-child {
  padding-top: 0;
}

.startseite-beitrag--list-item .startseite-beitrag__image {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100px;
          flex: 0 0 100px;
  width: 100px;
  height: 100px;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  background-color: #e2e2e2;
}

.startseite-beitrag--list-item .startseite-beitrag__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}

.startseite-beitrag--list-item .startseite-beitrag__badge {
  margin-bottom: 8px;
  font-size: 11px;
  padding: 3px 9px;
}

.startseite-beitrag--list-item .startseite-beitrag__title {
  margin: 0 0 8px 0;
  font-size: 18px;
  font-weight: 500;
  font-family: "Vollkorn SemiBold", "Vollkorn", Georgia, serif;
  text-transform: initial;
  line-height: 1.3;
  color: #333447;
}

.startseite-beitrag--list-item .startseite-beitrag__date {
  margin-bottom: 0;
}

/*--------------------------------------------------------------
# Seite Kaffeewissen
--------------------------------------------------------------*/
.kaffee-wissen__themen {
  margin-top: 40px;
}

.kaffee-wissen__thema {
  padding-bottom: 60px;
}
.kaffee-wissen__thema + .kaffee-wissen__thema {
  border-top: 1px solid #e2e2e2;
}
@media (max-width: 768px) {
  .kaffee-wissen__thema {
    padding-bottom: 40px;
  }
}

.kaffee-wissen__titel {
  margin: 0 0 16px 0;
  font-size: 36px;
  line-height: 1.2;
  color: #333447;
}
@media (max-width: 768px) {
  .kaffee-wissen__titel {
    font-size: 28px;
  }
}

.kaffee-wissen__text {
  max-width: 760px;
  margin: 0 0 30px 0;
  font-size: 17px;
  line-height: 1.6;
}

.kaffee-wissen__leer {
  color: #666;
}

.kaffee-wissen__button,
.kaffee-wissen__alle {
  display: inline-block;
  margin-top: 10px;
  padding: 12px 28px;
  border: 1px solid #333447;
  color: #333447;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 14px;
  -webkit-transition: background-color 0.3s ease, color 0.3s ease;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.kaffee-wissen__button:hover,
.kaffee-wissen__alle:hover {
  background-color: #333447;
  color: white;
}

.kaffee-wissen__alle {
  margin-top: 30px;
}

/* Kaffeewissen: Einleitung */
main.kaffee-wissen {
  padding-block: 0 3rem;
}

main.kaffee-wissen .entry-content h1:first-child {
  margin-top: 0;
}

main.kaffee-wissen .entry-content,
main.kaffee-wissen .entry-header {
  max-width: 44rem;
  margin-left: 0;
}

/* Einleitung bündig mit den Themenblöcken darunter (gleiche Einrückung wie .blog-teasers__heading-wrapper) */
main.kaffee-wissen .entry-content.container {
  margin-left: 0 !important; /* .container setzt margin: 0 auto !important */
  padding-inline: 0;
}

@media (max-width: 1024px) {
  main.kaffee-wissen .entry-content.container {
    padding-inline: 0;
  }
}
@media (max-width: 768px) {
  main.kaffee-wissen .entry-content.container {
    padding-inline: 0;
  }
}
/* ==== Kaffeewissen neu (2026-11-10): Wegweiser, Themenblöcke mit Aufmacher, wechselnde Hintergründe ==== */
.wissen-nav {
  padding: 0.5rem 0 3.5rem;
  background: #fff;
}

.wissen-nav__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.wissen-nav__grid li {
  margin: 0;
}

a.wissen-kachel {
  position: relative;
  isolation: isolate;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 0.25rem;
  min-height: 15rem;
  height: 100%;
  padding: 1.25rem;
  overflow: hidden;
  border-radius: 6px;
  background: #333447;
  text-decoration: none;
}

.wissen-kachel__bild {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  transition: -webkit-transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), -webkit-transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

a.wissen-kachel::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, rgba(26, 20, 16, 0.88)), color-stop(75%, rgba(26, 20, 16, 0.15)));
  background: linear-gradient(0deg, rgba(26, 20, 16, 0.88) 0, rgba(26, 20, 16, 0.15) 75%);
}

a.wissen-kachel:hover .wissen-kachel__bild,
a.wissen-kachel:focus-visible .wissen-kachel__bild {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

a.wissen-kachel:focus-visible {
  outline: 2px solid #d08c5c;
  outline-offset: 3px;
}

.wissen-kachel__zahl {
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #d08c5c;
}

.wissen-kachel__titel {
  text-transform: none;
  letter-spacing: normal;
  font-family: "Vollkorn", Georgia, serif;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.15;
  color: #fff;
}

.wissen-thema {
  position: relative;
  padding-block: clamp(3rem, 7vw, 5.5rem);
  scroll-margin-top: calc(var(--ec-nav-h, 72px) + 0.5rem);
}

.wissen-thema--hell {
  background: #fff;
}

.wissen-thema--creme {
  background: #f9f7f5;
}

.wissen-thema--dunkel {
  overflow: hidden;
  background: #2a1f1a;
  color: #e6ddd2;
}

.wissen-thema__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  gap: clamp(2rem, 5vw, 4.5rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.wissen-thema--flip .wissen-thema__text {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.wissen-thema__titel {
  margin: 0 0 1rem;
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  font-size: clamp(1.75rem, 1.3rem + 1.4vw, 2.5rem);
  line-height: 1.15;
  letter-spacing: normal;
  text-transform: none;
  color: #333447;
}

.wissen-thema--dunkel .wissen-thema__titel {
  color: #fff;
}

.wissen-thema__lead {
  max-width: 34rem;
  margin: 0 0 1.75rem;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #333;
}

.wissen-thema--dunkel .wissen-thema__lead {
  color: #e6ddd2;
}

/* weitere Beiträge als ruhige Liste */
.wissen-liste {
  max-width: 34rem;
  margin: 0 0 1.5rem;
  padding: 0;
  list-style: none;
  border-top: 1px solid rgba(51, 52, 71, 0.15);
}

.wissen-liste li {
  margin: 0;
  border-bottom: 1px solid rgba(51, 52, 71, 0.15);
}

.wissen-liste a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 1rem;
  padding: 0.8rem 0;
  text-decoration: none;
  color: #333447;
}

.wissen-liste__titel {
  font-family: "Vollkorn", Georgia, serif;
  font-size: 1.0625rem;
  font-weight: 600;
  line-height: 1.3;
}

.wissen-liste__datum {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  font-size: 0.8125rem;
  color: #666;
}

.wissen-liste a:hover .wissen-liste__titel,
.wissen-liste a:focus-visible .wissen-liste__titel {
  text-decoration: underline;
  text-underline-offset: 3px;
}

a.wissen-alle,
a.wissen-button {
  display: inline-block;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  color: #8a5a34;
}

a.wissen-alle:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

a.wissen-button {
  padding: 0.8rem 1.75rem;
  border: 1px solid #fff;
  color: #fff;
  -webkit-transition: background-color 0.3s ease, color 0.3s ease;
  transition: background-color 0.3s ease, color 0.3s ease;
}

a.wissen-button:hover,
a.wissen-button:focus-visible {
  background: #fff;
  color: #2a1f1a;
}

.wissen-leer {
  color: #666;
}

/* Aufmacher: großes Bild, darunter Titel + Auszug */
a.wissen-aufmacher {
  display: block;
  overflow: hidden;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 0 1px 2px rgba(51, 52, 71, 0.08), 0 12px 32px -16px rgba(51, 52, 71, 0.3);
          box-shadow: 0 1px 2px rgba(51, 52, 71, 0.08), 0 12px 32px -16px rgba(51, 52, 71, 0.3);
  text-decoration: none;
  color: #333;
  -webkit-transition: -webkit-box-shadow 0.3s ease, -webkit-transform 0.3s ease;
  transition: -webkit-box-shadow 0.3s ease, -webkit-transform 0.3s ease;
  transition: box-shadow 0.3s ease, transform 0.3s ease;
  transition: box-shadow 0.3s ease, transform 0.3s ease, -webkit-box-shadow 0.3s ease, -webkit-transform 0.3s ease;
}

a.wissen-aufmacher:hover,
a.wissen-aufmacher:focus-visible {
  -webkit-transform: translateY(-3px);
          transform: translateY(-3px);
  -webkit-box-shadow: 0 1px 2px rgba(51, 52, 71, 0.1), 0 18px 40px -16px rgba(51, 52, 71, 0.4);
          box-shadow: 0 1px 2px rgba(51, 52, 71, 0.1), 0 18px 40px -16px rgba(51, 52, 71, 0.4);
}

.wissen-aufmacher__bild {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  -o-object-fit: cover;
     object-fit: cover;
}

.wissen-aufmacher__bild--leer {
  background: #e9e3dc;
}

.wissen-aufmacher__inhalt {
  display: block;
  padding: 1.5rem 1.75rem 1.75rem;
}

.wissen-aufmacher__kicker {
  display: block;
  margin-bottom: 0.5rem;
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #8a5a34;
}

.wissen-aufmacher__titel {
  display: block;
  margin-bottom: 0.6rem;
  font-family: "Vollkorn", Georgia, serif;
  font-size: clamp(1.25rem, 1rem + 0.8vw, 1.625rem);
  font-weight: 600;
  line-height: 1.2;
  color: #333447;
}

.wissen-aufmacher__auszug {
  display: block;
  margin-bottom: 1rem;
  font-size: 0.9375rem;
  line-height: 1.6;
}

.wissen-aufmacher__mehr {
  font-family: "Lato Bold", "Lato", Arial, sans-serif;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #333447;
}

/* dunkler Block: der Tiki steht groß, hell auf dunkel, am rechten Rand angeschnitten */
.wissen-tiki {
  position: absolute;
  top: 50%;
  right: -4%;
  width: min(640px, 62%);
  aspect-ratio: 1000/723;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url("assets/images/tiki-und-bohnen-linien.png") no-repeat center/contain;
  -webkit-filter: brightness(1.9) saturate(1.1);
          filter: brightness(1.9) saturate(1.1);
  opacity: 0.55;
  pointer-events: none;
}

.wissen-thema--dunkel .wissen-thema__grid {
  position: relative;
  grid-template-columns: minmax(0, 1fr);
}

.wissen-aktuell .container {
  margin-bottom: 0;
}

.wissen-aktuell .blog-teasers__container {
  margin-top: 1.5rem;
}

.wissen-aktuell__alle {
  margin-top: 1.75rem !important;
}

@media (max-width: 960px) {
  .wissen-nav__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .wissen-thema__grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .wissen-thema--flip .wissen-thema__text {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
  .wissen-tiki {
    width: 90%;
    opacity: 0.3;
  }
}
@media (max-width: 480px) {
  a.wissen-kachel {
    min-height: 11rem;
  }
}
/* ==== Ende Kaffeewissen neu ==== */
/* Kaffeewissen „Aktuelles aus der Rösterei“: Karten und „Alle Beiträge“ bündig mit der Überschrift (gleiche Breite wie .container) */
.wissen-aktuell .blog-teasers__container {
  width: 96%;
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}

/* ==== Startseite nach Konzept (2026-11-10), Klassen eh-*; Quelle: startseite/startseite-entwurf.html ==== */
.eh {
  --eh-ink: #333447;
  --eh-espresso: #1e1611;
  --eh-terra: #8a5a34;
  --eh-cream: #f9f7f5;
  --eh-line: #e2e2e2;
  --eh-white: #fff;
  --eh-text: #404040;
  --eh-muted: #6f6f6f;
  --eh-sec: #666;
  --eh-display: "Vollkorn", Georgia, "Times New Roman", serif;
  --eh-body: "Lato", Arial, sans-serif;
  --eh-bold: "Lato Bold", "Lato", Arial, sans-serif;
  width: 100%;
  background: #fff;
  color: var(--eh-text);
  font-family: var(--eh-body);
  line-height: 1.6;
}

.eh *, .eh *::before, .eh *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.eh a {
  text-decoration: none;
}

.eh .eh-container {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding-inline: 20px;
}

.eh h1, .eh h2, .eh h3 {
  text-transform: none;
}

.eh :is(h1, .eh-h, .eh-atitle, .eh-feature-name, .eh-cat-name, .eh-addr dd) {
  font-weight: 600;
}

.eh h1 {
  font-size: clamp(2.3rem, 5.2vw, 4.3rem);
  line-height: 1.05;
  letter-spacing: -0.015em;
}

.eh .eh-h {
  font-size: clamp(1.7rem, 3vw, 2.3rem);
}

.eh .eh-feature-name {
  font-size: 1.7rem;
}

.eh :is(.eh-cat-name, .eh-atitle) {
  font-size: 1.2rem;
}

.eh .eh-addr dd {
  font-size: 1.1rem;
}

.eh .eh-kicker--terra {
  color: var(--eh-terra);
}

.eh a:focus-visible {
  outline: 2px solid var(--eh-terra);
  outline-offset: 2px;
}

.eh p {
  margin-top: 0;
}

.eh dl, .eh dd, .eh dt, .eh figure {
  margin-top: 0;
}

.eh-event-text p {
  margin: 0 0 24px;
}

.eh .eh-btn--primary {
  color: #fff;
}

.eh .eh-btn--ghost {
  color: var(--eh-ink);
}

.eh .eh-btn--primary:hover {
  color: #fff;
}

/* Statement „Zeit ist wichtiger als Hitze“: dunkler Band mit Tiki (hell auf dunkel, am Rand angeschnitten) */
.eh-statement {
  position: relative;
  overflow: hidden;
  background: #2a1f1a;
  color: #e6ddd2;
  padding-block: clamp(3.5rem, 8vw, 6.5rem);
}

.eh-statement__tiki {
  position: absolute;
  top: 50%;
  right: -4%;
  width: min(620px, 60%);
  aspect-ratio: 1000/723;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url("assets/images/tiki-und-bohnen-linien.png") no-repeat center/contain;
  -webkit-filter: brightness(1.9) saturate(1.1);
          filter: brightness(1.9) saturate(1.1);
  opacity: 0.5;
  pointer-events: none;
}

.eh-statement__inner {
  position: relative;
}

.eh-statement .eh-kicker {
  color: #d08c5c;
}

.eh .eh-statement__text {
  margin: 0 0 14px;
  max-width: 14ch;
  font-family: var(--eh-display);
  font-weight: 600;
  font-size: clamp(2.4rem, 6vw, 4.6rem);
  line-height: 1.05;
  letter-spacing: -0.015em;
  color: #fff;
  text-wrap: balance;
}

.eh-statement__sub {
  max-width: 30rem;
  margin: 0 0 22px;
  font-size: 1.125rem;
  line-height: 1.6;
  color: #e6ddd2;
}

.eh .eh-tlink--hell {
  color: #d08c5c;
}

@media (max-width: 860px) {
  .eh-statement__tiki {
    width: 90%;
    opacity: 0.3;
  }
}
.eh-hero {
  position: relative;
  overflow: hidden;
  background: var(--eh-cream);
}

.eh-aside {
  position: relative;
  z-index: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  margin-block: calc(-1 * var(--eh-pt)) calc(-1 * var(--eh-pb));
  padding-block: var(--eh-pt) var(--eh-pb);
}

.eh-aside::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  aspect-ratio: 1000/723;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: url("assets/images/tiki-und-bohnen-linien.png") no-repeat center/contain;
  opacity: 0.4;
  z-index: -1;
  pointer-events: none;
}

.eh-hero .eh-cols {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: 48px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  --eh-pt:clamp(56px,9vw,120px);
  --eh-pb:clamp(40px,6vw,72px);
  padding-block: var(--eh-pt) var(--eh-pb);
}

.eh-eyebrow {
  display: block;
  margin: 0 0 20px;
  font: 700 13px/1.2 var(--eh-bold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--eh-terra);
}

.eh h1 {
  margin: 0 0 24px;
  font-family: var(--eh-display);
  font-weight: 700;
  font-size: clamp(2.6rem, 6.2vw, 5.1rem);
  line-height: 1;
  letter-spacing: -0.01em;
  color: var(--eh-ink);
  text-wrap: balance;
}

.eh-lead {
  max-width: 32em;
  margin: 0 0 32px;
  font-size: 1.125rem;
  line-height: 1.7;
  color: var(--eh-text);
}

.eh-btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 12px;
}

.eh-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font: 700 13px/1 var(--eh-bold);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 14px 22px;
  border-radius: 6px;
  text-decoration: none;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
}

.eh-btn.eh-btn--primary {
  background: var(--eh-terra);
  color: var(--eh-white);
}

.eh-btn.eh-btn--primary:hover {
  background: var(--eh-ink);
}

.eh-btn.eh-btn--primary span {
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}

.eh-btn.eh-btn--primary:hover span {
  -webkit-transform: translateX(4px);
          transform: translateX(4px);
}

.eh-btn.eh-btn--ghost {
  border: 2px solid var(--eh-ink);
  color: var(--eh-ink);
  padding: 12px 20px;
}

.eh-cup {
  display: block;
  width: clamp(220px, 28vw, 360px);
  max-width: 100%;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  margin: 0;
  -webkit-box-shadow: 0 0 0 10px var(--eh-cream), 0 0 0 11px rgba(138, 90, 52, 0.35);
          box-shadow: 0 0 0 10px var(--eh-cream), 0 0 0 11px rgba(138, 90, 52, 0.35);
}

.eh-kicker {
  margin: 0 0 8px;
  font: 700 12px/1.2 var(--eh-bold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--eh-muted);
}

.eh-place {
  margin: 0 0 20px;
  font-family: var(--eh-display);
  font-weight: 700;
  font-size: 1.55rem;
  line-height: 1.25;
}

.eh-place a {
  color: var(--eh-ink);
  text-decoration: none;
}

.eh-place a:hover {
  text-decoration: underline;
}

.eh-awards {
  background: var(--eh-espresso);
}

.eh-agrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px 48px;
  padding-block: 40px;
}

.eh-atitle a {
  color: inherit;
  text-decoration: none;
}

.eh-atitle a:hover {
  text-decoration: underline;
}

.eh-award {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 0;
}

.eh-award img {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 84px;
  height: auto;
  max-width: 100%;
}

.eh-award .eh-kicker {
  margin-bottom: 4px;
  color: #b9a48c;
}

.eh-awards .eh-atitle {
  color: var(--eh-white);
}

.eh-awards .eh-atext {
  color: #cbbfb3;
}

.eh-award img[alt^="Der Feinschmecker"] {
  border-radius: 6px;
}

.eh-atitle {
  margin: 0 0 4px;
  font-family: var(--eh-display);
  font-weight: 700;
  font-size: 1.35rem;
  line-height: 1.2;
  color: var(--eh-ink);
}

.eh-atext {
  margin: 0;
  font-size: 0.9rem;
  color: var(--eh-sec);
}

.eh-about {
  background: var(--eh-cream);
}

.eh-agrid2 {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  gap: 56px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: 56px;
}

.eh-portrait {
  margin: 0;
}

.eh-portrait img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 0% 50%;
     object-position: 0% 50%;
  border-radius: 16px;
}

.eh-portrait figcaption {
  margin-top: 10px;
  font-size: 0.85rem;
  color: var(--eh-sec);
}

.eh-about-text {
  max-width: 62ch;
}

.eh-kicker--terra {
  color: var(--eh-terra);
}

.eh-h {
  margin: 0 0 14px;
  font: 700 clamp(1.9rem, 3.4vw, 2.6rem)/1.1 var(--eh-display);
  color: var(--eh-ink);
  text-wrap: balance;
}

.eh-about-text > p:not(.eh-kicker) {
  margin: 0 0 24px;
  font-size: 1.0625rem;
  line-height: 1.7;
  color: var(--eh-text);
}

.eh-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px 24px;
}

.eh-tlink {
  font: 700 13px/1 var(--eh-bold);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--eh-terra);
  text-decoration: none;
}

.eh-tlink:hover {
  text-decoration: underline;
}

.eh-cafe {
  background: var(--eh-white);
}

.eh-agrid3 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 56px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: 64px;
}

.eh-cafe-text {
  max-width: 62ch;
}

.eh-kicker--terra {
  color: var(--eh-terra);
}

.eh-cafe-text > p:not(.eh-kicker):not(.eh-links) {
  margin: 0 0 24px;
  font-size: 1.0625rem;
  line-height: 1.7;
  color: var(--eh-text);
}

.eh-addr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 16px 40px;
  margin: 0 0 28px;
}

.eh-addr dt {
  margin: 0 0 4px;
  font: 700 12px/1.2 var(--eh-bold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--eh-muted);
}

.eh-addr dd {
  margin: 0;
  font: 700 1.2rem/1.3 var(--eh-display);
  color: var(--eh-ink);
}

.eh-cafe-img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 4/3;
  max-width: 100%;
  border-radius: 16px;
  background: var(--eh-line);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font: 700 12px/1.4 var(--eh-bold);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--eh-sec);
}

.eh-event {
  padding-block: 48px 8px;
}

.eh-event-card {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  border-radius: 16px;
  overflow: hidden;
  background: var(--eh-cream);
  -webkit-transition: -webkit-box-shadow 0.25s, -webkit-transform 0.25s;
  transition: -webkit-box-shadow 0.25s, -webkit-transform 0.25s;
  transition: box-shadow 0.25s, transform 0.25s;
  transition: box-shadow 0.25s, transform 0.25s, -webkit-box-shadow 0.25s, -webkit-transform 0.25s;
}

.eh-event-card:hover {
  -webkit-box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
          box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}

.eh-event-img {
  position: relative;
  min-height: 260px;
  background: var(--eh-line);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.eh-event-img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}

.eh-badge {
  position: absolute;
  top: 16px;
  left: 16px;
  padding: 6px 13px;
  border-radius: 6px;
  background: var(--eh-terra);
  color: var(--eh-white);
  font: 700 12px/1.2 var(--eh-bold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.eh-event-body {
  padding: 36px 40px;
}

.eh-kicker--terra {
  color: var(--eh-terra);
}

.eh-event-body > p:not(.eh-kicker):not(.eh-links) {
  margin: 0 0 24px;
  font-size: 1.0625rem;
  line-height: 1.7;
  color: var(--eh-text);
  max-width: 56ch;
}

.eh-shop {
  padding-block: 56px 64px;
}

.eh-shop-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 12px 24px;
  margin-bottom: 28px;
}

.eh-kicker--terra {
  color: var(--eh-terra);
}

.eh-shop-head .eh-h {
  margin: 0;
}

.eh-shop-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: 20px;
}

.eh-feature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 16px;
  background: var(--eh-white);
  border: 1px solid var(--eh-line);
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  -webkit-transition: -webkit-box-shadow 0.25s, -webkit-transform 0.25s;
  transition: -webkit-box-shadow 0.25s, -webkit-transform 0.25s;
  transition: box-shadow 0.25s, transform 0.25s;
  transition: box-shadow 0.25s, transform 0.25s, -webkit-box-shadow 0.25s, -webkit-transform 0.25s;
}

.eh-feature:hover, .eh-cat:hover {
  -webkit-box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
          box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}

.eh-feature img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  aspect-ratio: 3/2;
  -o-object-fit: contain;
     object-fit: contain;
  background: var(--eh-white);
}

.eh-feature-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 8px;
  padding: 4px 28px 28px;
}

.eh-kicker--terra {
  margin: 0;
  color: var(--eh-terra);
}

.eh-feature-body {
  padding-top: 0;
}

.eh-feature-name {
  font: 700 1.9rem/1.1 var(--eh-display);
  color: var(--eh-ink);
}

.eh-feature-body .eh-cat-desc {
  margin-bottom: 12px;
}

.eh-cats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.eh-cat {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
  padding: 20px 44px 20px 20px;
  border-radius: 10px;
  background: var(--eh-cream);
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  -webkit-transition: -webkit-box-shadow 0.25s, -webkit-transform 0.25s;
  transition: -webkit-box-shadow 0.25s, -webkit-transform 0.25s;
  transition: box-shadow 0.25s, transform 0.25s;
  transition: box-shadow 0.25s, transform 0.25s, -webkit-box-shadow 0.25s, -webkit-transform 0.25s;
}

.eh-cat-name::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 10px;
  border-radius: 4px;
  background: var(--label);
  -webkit-box-shadow: inset 0 0 0 1px rgba(51, 52, 71, 0.25);
          box-shadow: inset 0 0 0 1px rgba(51, 52, 71, 0.25);
  vertical-align: 1px;
}

.eh-cat-name {
  font: 700 1.35rem/1.15 var(--eh-display);
  color: var(--eh-ink);
}

.eh-cat-desc {
  font-size: 0.92rem;
  line-height: 1.5;
  color: var(--eh-sec);
}

.eh-cat-arrow {
  position: absolute;
  right: 18px;
  bottom: 18px;
  color: var(--eh-terra);
  font-weight: 700;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}

.eh-cat:hover .eh-cat-arrow {
  -webkit-transform: translateX(4px);
          transform: translateX(4px);
}

.eh-cat:focus-visible, .eh-feature:focus-visible {
  outline: 2px solid var(--eh-terra);
  outline-offset: 2px;
}

@media (max-width: 860px) {
  .eh-news-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }
  .eh-hero .eh-cols {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }
  .eh-hero .eh-aside {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .eh-hero .eh-cols {
    --eh-pt:24px;
    gap: 28px;
  }
  .eh-hero .eh-aside {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  .eh-hero .eh-cup {
    width: 100%;
    aspect-ratio: 4/3;
    border-radius: 16px;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .eh-aside::before {
    opacity: 0.3;
  }
  .eh-tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .eh-note {
    grid-template-columns: minmax(0, 1fr);
  }
  .eh-agrid2 {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    padding-block: 40px;
  }
  .eh-agrid3 {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    padding-block: 44px;
  }
  .eh-cafe-img {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .eh-shop-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .eh-event-card {
    grid-template-columns: minmax(0, 1fr);
  }
  .eh-event-img {
    min-height: 200px;
  }
  .eh-event-body {
    padding: 28px 24px;
  }
  .eh-agrid {
    grid-template-columns: minmax(0, 1fr);
  }
}
/* Aktuelles & Wissen (Block explorer/aktuelles-wissen) im Konzept-Stil */
.eh .startseite-beitraege {
  background: #fff;
}

.eh .startseite-beitraege__eyebrow {
  color: var(--eh-terra);
}

.eh .startseite-beitrag__image {
  border-radius: 16px;
}

/* ==== Ende Startseite nach Konzept ==== */
/* ==== Startseite Optionen (2026-11-10): dunkler Hero, dunkle „Über uns“-Sektion, einheitliche Dachzeilen ==== */
/* Eyebrow (Hero), Kicker (Sektionen) und „Aus der Rösterei“: eine Optik */
.eh .eh-eyebrow, .eh .eh-kicker, .eh .startseite-beitraege__eyebrow {
  display: block;
  margin: 0 0 8px;
  font: 700 12px/1.2 var(--eh-bold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--eh-terra);
}

.eh .eh-hero .eh-eyebrow {
  margin-bottom: 20px;
}

.eh .eh-kicker--terra {
  color: var(--eh-terra);
}

.eh .eh-awards .eh-kicker, .eh .eh-statement .eh-kicker, .eh .eh-hero--dunkel .eh-eyebrow, .eh .eh-about .eh-kicker {
  color: #d08c5c;
}

.eh .eh-awards .eh-kicker {
  margin-bottom: 4px;
}

/* Hero dunkel: Foto Christoph + Cindy rechts, nach links ins Schwarz verlaufend */
.eh-hero--dunkel {
  background: #000;
  color: #fff;
}

.eh-hero__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: right center;
     object-position: right center;
}

.eh-hero--dunkel::after {
  content: "";
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(0, 0, 0, 0.92)), color-stop(38%, rgba(0, 0, 0, 0.75)), color-stop(62%, rgba(0, 0, 0, 0)));
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.92) 0, rgba(0, 0, 0, 0.75) 38%, rgba(0, 0, 0, 0) 62%);
  pointer-events: none;
}

.eh-hero--dunkel .eh-cols {
  display: block;
  position: relative;
  z-index: 1;
  padding-block: clamp(80px, 11vw, 150px) clamp(64px, 8vw, 110px);
}

.eh-hero--dunkel .eh-cols > div {
  max-width: 600px;
}

.eh .eh-hero--dunkel h1 {
  color: #fff;
}

.eh-hero--dunkel .eh-lead {
  color: #e6ddd2;
}

.eh .eh-hero--dunkel .eh-btn--primary:hover {
  background: #fff;
  color: var(--eh-ink);
}

.eh .eh-hero--dunkel .eh-btn--ghost {
  border-color: #fff;
  color: #fff;
}

.eh .eh-hero--dunkel .eh-btn--ghost:hover {
  background: #fff;
  color: var(--eh-ink);
}

.eh .eh-hero--dunkel a:focus-visible {
  outline-color: #d08c5c;
}

.eh-hero--dunkel + .eh-awards {
  border-top: 1px solid rgba(208, 140, 92, 0.6);
}

@media (max-width: 860px) {
  .eh-hero--dunkel::after {
    inset: 0 0 auto 0;
    height: auto;
    aspect-ratio: 4/3;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #000), color-stop(35%, rgba(0, 0, 0, 0)));
    background: linear-gradient(0deg, #000 0, rgba(0, 0, 0, 0) 35%);
  }
  .eh-hero__bg {
    position: relative;
    display: block;
    height: auto;
    aspect-ratio: 4/3;
    -o-object-position: 80% 30%;
       object-position: 80% 30%;
  }
  .eh-hero--dunkel .eh-cols {
    padding-block: 8px 48px;
  }
}
/* Über uns: immer dunkel */
.eh .eh-about {
  background: var(--eh-espresso);
}

.eh .eh-about .eh-h {
  color: #fff;
}

.eh .eh-about-text > p:not(.eh-kicker) {
  color: #e6ddd2;
}

.eh .eh-about .eh-tlink {
  color: #d08c5c;
}

.eh .eh-about .eh-btn--ghost {
  border-color: #fff;
  color: #fff;
}

.eh .eh-about .eh-btn--ghost:hover {
  background: #fff;
  color: var(--eh-ink);
}

.eh .eh-about a:focus-visible {
  outline-color: #d08c5c;
}

/* ==== Ende Startseite Optionen ==== */
/* ==== Seiten aus Gutenberg-Blöcken (Kaffeehaus, Über uns), 2026-11-10 ====
   Klassen für Block-„Zusätzliche CSS-Klasse(n)“: ec-lead, ec-bild, ec-karten, ec-karte, ec-kicker, ec-buttons,
   ec-spalten, ec-menschen, ec-thema, ec-mehr, ec-cta */
.entry-content > h1.wp-block-heading:first-child {
  margin-top: 0;
}

.entry-content > h1.wp-block-heading + .ec-lead {
  margin-top: 0;
}

.entry-content h2.wp-block-heading {
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  text-transform: none;
  color: #404040;
  font-size: clamp(1.6rem, 3vw, 2.1rem);
  line-height: 1.15;
  margin: 0 0 14px;
}

.entry-content h3.wp-block-heading {
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  text-transform: none;
  color: #404040;
  font-size: 1.3rem;
  margin: 18px 0 8px;
}

.ec-lead {
  max-width: 46rem;
  margin: 0 0 28px;
  font-size: 1.2rem;
  line-height: 1.65;
  color: #404040;
}

.wp-block-image.ec-bild, .wp-block-video.ec-bild {
  margin: 0 0 36px;
}

.wp-block-image.ec-bild img, .wp-block-video.ec-bild video {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 16px;
}

.wp-block-video.ec-bild video {
  aspect-ratio: 16/7;
  -o-object-fit: cover;
     object-fit: cover;
}

.ec-kicker {
  margin: 0 0 8px;
  font: 700 12px/1.2 "Lato Bold", "Lato", Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a5a34;
}

.ec-karten {
  gap: 20px;
  margin-bottom: 48px;
}

.ec-karte {
  height: 100%;
  padding: 28px;
  border-radius: 16px;
  background: #f9f7f5;
}

.ec-karte > :last-child {
  margin-bottom: 0;
}

.ec-karte p {
  line-height: 1.7;
}

.ec-spalten {
  gap: 48px;
  margin-bottom: 56px;
}

.ec-spalten .ec-bild {
  margin-bottom: 0;
}

.ec-buttons .wp-block-button__link {
  padding: 14px 22px;
  border-radius: 6px;
  background: #8a5a34;
  color: #fff;
  font: 700 13px/1 "Lato Bold", "Lato", Arial, sans-serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
}

.ec-buttons .wp-block-button__link:hover {
  background: #333447;
  color: #fff;
}

.ec-buttons .is-style-outline .wp-block-button__link {
  background: transparent;
  border: 2px solid currentColor;
  padding: 12px 20px;
  color: #333447;
}

.ec-buttons .is-style-outline .wp-block-button__link:hover {
  background: #333447;
  color: #fff;
}

.ec-thema {
  gap: 48px;
  margin: 0;
  padding: 36px 0;
  border-top: 1px solid #e2e2e2;
}

.ec-thema h2.wp-block-heading {
  margin: 0;
  font-size: clamp(1.4rem, 2.4vw, 1.8rem);
}

.ec-thema p {
  max-width: 46rem;
  line-height: 1.75;
}

.ec-mehr a {
  font: 700 13px/1 "Lato Bold", "Lato", Arial, sans-serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #8a5a34;
  text-decoration: none;
}

.ec-mehr a:hover {
  text-decoration: underline;
}

.ec-cta {
  margin: 24px 0 56px;
  padding: clamp(36px, 6vw, 64px) 24px;
  border-radius: 16px;
  background: #1e1611;
  text-align: center;
  color: #e6ddd2;
}

.ec-cta h2.wp-block-heading {
  color: #fff;
}

.ec-cta .ec-buttons {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.ec-cta .ec-buttons .wp-block-button__link:hover {
  background: #fff;
  color: #333447;
}

.ec-cta .ec-buttons .is-style-outline .wp-block-button__link {
  color: #fff;
}

.ec-cta .ec-buttons .is-style-outline .wp-block-button__link:hover {
  background: #fff;
  color: #333447;
}

.entry-content .wp-block-details {
  margin: 0 0 10px;
  padding: 16px 20px;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
}

.entry-content .wp-block-details summary {
  cursor: pointer;
  font-weight: 700;
}

@media (max-width: 781px) {
  .ec-thema {
    gap: 12px;
    padding: 28px 0;
  }
  .ec-spalten {
    gap: 24px;
  }
}
/* Seiteninhalt bündig mit Brotkrume und Überschrift (der Container im Container hatte zusätzlichen Einzug) */
main.site-main.container > article.page > .entry-content.container {
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-inline: 0;
}

.ec-portrait img {
  aspect-ratio: 4/5;
  -o-object-fit: cover;
     object-fit: cover;
}

.ec-portrait figcaption {
  margin-top: 10px;
  font-size: 0.95rem;
  line-height: 1.4;
  color: #6f6f6f;
  text-align: left;
}

.ec-portrait figcaption strong {
  color: #404040;
}

@media (max-width: 781px) {
  .ec-menschen .wp-block-column {
    -ms-flex-preferred-size: 100% !important;
        flex-basis: 100% !important;
  }
  .ec-portrait {
    max-width: 320px;
  }
}
.ec-zitat {
  margin: 0 0 56px;
  padding: 0;
  border: 0;
  text-align: left;
}

.ec-zitat blockquote {
  margin: 0;
  padding: 4px 0 4px clamp(20px, 3vw, 32px);
  border: 0;
  border-left: 4px solid #8a5a34;
}

.ec-zitat blockquote p {
  margin: 0 0 12px;
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  font-size: clamp(2.2rem, 5.4vw, 3.8rem);
  line-height: 1.08;
  letter-spacing: -0.01em;
  color: #1e1611;
  text-wrap: balance;
}

.ec-zitat cite {
  display: block;
  font: 700 12px/1.3 "Lato Bold", "Lato", Arial, sans-serif;
  font-style: normal;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a5a34;
}

.ec-zitat, .ec-zitat blockquote, .ec-zitat blockquote p, .ec-zitat cite {
  text-align: left !important;
}

.ec-text-schmal {
  max-width: 46rem;
  margin-bottom: 40px;
}

.ec-teaser {
  gap: 0;
  margin: 0 0 56px;
  overflow: hidden;
  border-radius: 16px;
  background: #f9f7f5;
}

.ec-teaser .wp-block-column {
  margin: 0;
}

.ec-teaser__bild figure {
  margin: 0;
  height: 100%;
}

.ec-teaser__bild img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 300px;
  max-height: 480px;
  -o-object-fit: cover;
     object-fit: cover;
}

.ec-teaser__text {
  padding: clamp(24px, 4vw, 44px);
}

@media (max-width: 781px) {
  .ec-teaser__bild img {
    min-height: 220px;
    max-height: 320px;
  }
}
/* Echte Vollkorn Italic (assets/fonts/vollkorn/Vollkorn-Italic-latin-wght.woff2) für Gesprochenes und Unterschriften.
   Aufrecht bleiben: Einleitungen (ec-lead), Fließtext, Überschriften. */
.ec-zitat blockquote p {
  font-style: italic;
}

.ec-portrait figcaption {
  font-family: "Vollkorn", Georgia, serif;
  font-style: italic;
  font-size: 1.05rem;
}

.ec-portrait figcaption strong {
  font-weight: 600;
}

.eh-statement__sub {
  font-family: var(--eh-display);
  font-style: italic;
  font-size: 1.3rem;
}

.entry-content blockquote {
  font-family: "Vollkorn", Georgia, serif;
  font-style: italic;
}

.entry-content blockquote cite {
  font-style: normal;
}

/* Einheitlicher Seitenkopf (Brotkrume + H1) auch für Seiten ohne eigene H1 und für die Rechtstexte (Vorlage „No Hero“) */
article.page > .entry-header .entry-title, .page-no-hero .entry-title {
  margin: 0 0 0.5em;
  text-transform: none;
}

.page-no-hero {
  background: #fff;
}

.page-no-hero .page-no-hero__container {
  display: block;
  padding: 0;
}

.page-no-hero .page-no-hero__content {
  max-width: 52rem;
  margin: 0;
  padding: 0 0 3rem;
  background: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 0;
  -webkit-transform: none !important;
          transform: none !important;
}

.page-no-hero .page-no-hero__content h1, .page-no-hero .page-no-hero__content h2 {
  margin-top: 2rem;
}

/* Inhaltsbreite auf dem Desktop: 1080 px wie auf der Startseite (Textspalte der Startseite); Topbar, Navigation und Fußbereich bleiben 1200 px breit */
@media (min-width: 1120px) {
  .ec-topbar__list.container, .ec-nav__inner.container, .ec-foot__grid.container, .ec-foot__bottom.container, .ec-foot__copy.container {
    max-width: 1200px;
  }
}
/* ==== Ende Seiten aus Gutenberg-Blöcken ==== */
/* Besuchte Links: Block-Buttons behalten ihre Farbe (a:visited des Themes darf sie nicht grau färben) */
.ec-buttons .wp-block-button__link:visited {
  background: #8a5a34;
  color: #fff;
}

.ec-buttons .wp-block-button__link:visited:hover {
  background: #333447;
  color: #fff;
}

.ec-buttons .is-style-outline .wp-block-button__link:visited {
  background: transparent;
  color: #333447;
}

.ec-buttons .is-style-outline .wp-block-button__link:visited:hover {
  background: #333447;
  color: #fff;
}

.ec-cta .ec-buttons .wp-block-button__link:visited:hover {
  background: #fff;
  color: #333447;
}

.ec-cta .ec-buttons .is-style-outline .wp-block-button__link:visited {
  background: transparent;
  color: #fff;
}

.ec-cta .ec-buttons .is-style-outline .wp-block-button__link:visited:hover {
  background: #fff;
  color: #333447;
}

/* Telefon-/Mail-Links in den Karten: wie der Fließtext, ohne Unterstreichung (Hover: unterstrichen) */
.ec-karte a:not(.wp-block-button__link),
.ec-karte a:not(.wp-block-button__link):visited {
  color: inherit;
  font-weight: inherit;
  text-decoration: none;
}

.ec-karte a:not(.wp-block-button__link):hover,
.ec-karte a:not(.wp-block-button__link):focus-visible {
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Rechtstexte: lesbare Zeilenlänge, Überschriften wie im Rest der Seite */
body.ec-rechtstext .entry-content {
  max-width: 780px;
}

body.ec-rechtstext .entry-content h2 {
  margin-top: 2em;
}

body.ec-rechtstext .entry-content h3 {
  margin-top: 1.6em;
}

body.ec-rechtstext .entry-content > :first-child {
  margin-top: 0;
}

/* Brotkrume auf Beitragsseiten (im Hero) und Archiven (über der Überschrift) */
.blog-hero__crumbs {
  max-width: 1120px;
  margin: 0 auto;
}

.blog-hero__crumbs nav.woocommerce-breadcrumb {
  margin: 0 0 28px;
}

.blog-teasers__heading-wrapper nav.woocommerce-breadcrumb {
  margin: 0 0 20px;
}

@media (max-width: 768px) {
  .blog-hero__crumbs nav.woocommerce-breadcrumb {
    margin-bottom: 20px;
  }
}
/*--------------------------------------------------------------
# Hero Aktion - Redesigned
--------------------------------------------------------------*/
.hero-aktion-redesigned {
  width: 100%;
  margin: 0;
  margin-top: 3em;
  background-color: #f9f7f5;
  border-bottom: 1px solid #e2e2e2;
}

.hero-aktion-redesigned__container {
  max-width: 1440px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media (max-width: 1024px) {
  .hero-aktion-redesigned__container {
    gap: 40px;
    grid-template-columns: 1fr;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 768px) {
  .hero-aktion-redesigned__container {
    gap: 30px;
    padding: 0;
  }
}

.hero-aktion-redesigned__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  padding: 60px 40px;
}
@media (max-width: 768px) {
  .hero-aktion-redesigned__content {
    padding: 60px 20px;
  }
}
@media (max-width: 480px) {
  .hero-aktion-redesigned__content {
    padding: 60px 15px;
    gap: 16px;
  }
}

.hero-aktion-redesigned__label {
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #ca792b;
}
@media (max-width: 768px) {
  .hero-aktion-redesigned__label {
    font-size: 11px;
    margin-bottom: 8px;
  }
}

.hero-aktion-redesigned__title {
  font-size: 52px;
  font-weight: 400;
  text-transform: capitalize;
  line-height: 1;
  color: #333447;
  margin: 0 0 10px 0;
}
@media (max-width: 1024px) {
  .hero-aktion-redesigned__title {
    font-size: 44px;
  }
}
@media (max-width: 768px) {
  .hero-aktion-redesigned__title {
    font-size: 36px;
    margin-bottom: 16px;
  }
}
@media (max-width: 480px) {
  .hero-aktion-redesigned__title {
    font-size: 28px;
    margin-bottom: 12px;
  }
}

.hero-aktion-redesigned__excerpt {
  font-size: 16px;
  line-height: 1.7;
  color: #555;
  margin: 0 0 20px 0;
}
.hero-aktion-redesigned__excerpt p {
  margin: 0 0 15px 0;
}
.hero-aktion-redesigned__excerpt p:last-child {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .hero-aktion-redesigned__excerpt {
    font-size: 15px;
    margin-bottom: 16px;
  }
}
@media (max-width: 480px) {
  .hero-aktion-redesigned__excerpt {
    font-size: 14px;
    margin-bottom: 12px;
  }
}

.hero-aktion-redesigned__cta-wrapper {
  margin: 1cqh 0 0 0;
  padding: 0;
}

.hero-aktion-redesigned__cta {
  display: inline-block;
  padding: 16px 40px;
  background-color: transparent;
  color: black;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border: 2px solid #333447;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-radius: 0;
}
.hero-aktion-redesigned__cta:hover {
  background-color: transparent;
  color: #333447;
}
@media (max-width: 768px) {
  .hero-aktion-redesigned__cta {
    padding: 14px 32px;
    font-size: 13px;
  }
}
@media (max-width: 480px) {
  .hero-aktion-redesigned__cta {
    padding: 12px 28px;
    font-size: 12px;
  }
}

.hero-aktion-redesigned__image-wrapper {
  width: 100%;
  height: auto;
  -ms-flex-item-align: center;
      align-self: center;
  padding: 40px 40px 40px 0;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .hero-aktion-redesigned__image-wrapper {
    padding: 0 40px 40px;
    border-width: 2px;
  }
}
@media (max-width: 768px) {
  .hero-aktion-redesigned__image-wrapper {
    padding: 0 0 30px;
    border-width: 2px;
    margin: 0 20px;
    max-width: calc(100% - 40px);
  }
}
@media (max-width: 480px) {
  .hero-aktion-redesigned__image-wrapper {
    margin: 0 15px;
    max-width: calc(100% - 30px);
  }
}

.hero-aktion-redesigned__image {
  display: block;
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  height: auto;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.hero-aktion-redesigned__image--placeholder {
  background-color: #e2e2e2;
  min-height: 400px;
}

.hero-aktion-redesigned--beitrag .hero-aktion-redesigned__title {
  text-transform: none;
}

.hero-aktion__wrapper {
  position: relative;
  padding: 6rem 0;
  color: #fff;
  background-size: cover;
  background-position: center;
  margin-bottom: 3em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.hero-aktion__content {
  max-width: 720px;
}

.hero-aktion__image {
  max-width: 420px;
}
.hero-aktion__image img {
  width: 100%;
  height: auto;
  display: block;
}

.hero-aktion__overlay {
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.25)), to(rgba(0, 0, 0, 0.45)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.45));
}
.hero-aktion__inner {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem;
}
.hero-aktion__title {
  font-size: 2.2rem;
  margin: 0 0 0.5rem;
}
.hero-aktion__excerpt {
  font-size: 1.05rem;
  margin-bottom: 1rem;
}
.hero-aktion__cta {
  display: inline-block;
  background: black;
  color: #fff;
  padding: 0.75rem 1.25rem;
  border-radius: 4px;
  text-decoration: none;
}
.hero-aktion__cta:hover {
  background: #333;
}
.hero-aktion__cta:visited {
  color: #eee;
}
.hero-aktion__meta {
  margin-top: 2rem;
}

/* Single action full-width hero */
.single-aktion-hero {
  width: 100vw;
  max-width: 100%;
  height: 60vh;
  background-size: cover;
  background-position: center;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-bottom: 4em;
}

.single-aktion__content {
  padding: 3rem 1.25rem;
}

.single-aktion .entry-title {
  font-size: 3rem;
  margin-top: 0;
}

.wp-block-woocommerce-add-to-cart-form .variations_button > .quantity:not(.wc-block-components-quantity-selector) .qty {
  padding: 0.9rem 0rem !important;
}

.wp-block-navigation.is-responsive .wp-block-navigation__responsive-container.is-menu-open {
  padding-left: var(--wp--custom--gap--horizontal);
  padding-right: var(--wp--custom--gap--horizontal);
}
.wp-block-navigation.is-responsive ul.wp-block-social-links {
  margin: 0;
  gap: var(--wp--custom--gap--baseline);
}
.wp-block-navigation.is-responsive .is-menu-open {
  font-size: var(--wp--preset--font-size--medium);
}
.wp-block-navigation.is-responsive .is-menu-open .wp-block-navigation__responsive-container-content {
  -webkit-box-align: var(--navigation-layout-justification-setting, flex-start);
      -ms-flex-align: var(--navigation-layout-justification-setting, flex-start);
          align-items: var(--navigation-layout-justification-setting, flex-start);
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
.wp-block-navigation.is-responsive .is-menu-open .wp-block-navigation__container {
  row-gap: 0.5rem;
  -webkit-box-align: var(--navigation-layout-justification-setting, flex-start);
      -ms-flex-align: var(--navigation-layout-justification-setting, flex-start);
          align-items: var(--navigation-layout-justification-setting, flex-start);
  -webkit-box-flex: unset;
      -ms-flex: unset;
          flex: unset;
  padding-bottom: 0;
}
.wp-block-navigation.is-responsive .is-menu-open .wp-block-navigation-item {
  -webkit-box-align: var(--navigation-layout-justification-setting, flex-start);
      -ms-flex-align: var(--navigation-layout-justification-setting, flex-start);
          align-items: var(--navigation-layout-justification-setting, flex-start);
}
.wp-block-navigation.is-responsive .is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
  font-size: var(--wp--custom--font-sizes--normal);
  padding-bottom: 0;
  padding-left: var(--wp--custom--gap--horizontal);
  padding-top: 0.5rem;
  row-gap: 0.5rem;
}
.wp-block-navigation.is-responsive .is-menu-open ul.wp-block-social-links {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.wp-block-navigation .current-menu-item {
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
}

.wp-block-navigation-item__label {
  white-space: nowrap;
}

/* Additional styling for header-minimal */
.wp-block-navigation.blockbase-responsive-navigation-minimal.is-responsive .is-menu-open.wp-block-navigation__responsive-container {
  font-size: var(--wp--preset--font-size--large);
  font-weight: 200;
}
.wp-block-navigation.blockbase-responsive-navigation-minimal.is-responsive .is-menu-open.wp-block-navigation__responsive-container .wp-block-navigation__container {
  row-gap: 1rem;
}
.wp-block-navigation.blockbase-responsive-navigation-minimal.is-responsive .is-menu-open.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin: 0 auto;
  max-width: 800px;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
.wp-block-navigation.blockbase-responsive-navigation-minimal.is-responsive .is-menu-open.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
  row-gap: 0;
}
.wp-block-navigation.blockbase-responsive-navigation-minimal.is-responsive .is-menu-open.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content .wp-block-navigation-item > a:hover {
  text-decoration-line: underline;
}
.wp-block-navigation.blockbase-responsive-navigation-minimal.is-responsive .is-menu-open.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content .wp-block-navigation-item.current-menu-item > a {
  text-decoration: underline;
}
.wp-block-navigation.blockbase-responsive-navigation-minimal.is-responsive .is-menu-open.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.wp-block-navigation.blockbase-responsive-navigation-minimal.is-responsive .is-menu-open.wp-block-navigation__responsive-container ul.wp-block-social-links {
  padding-bottom: calc(var(--wp--custom--gap--vertical) * 2);
}
.wp-block-navigation.blockbase-responsive-navigation-minimal.is-responsive .is-menu-open.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
  font-size: var(--wp--preset--font-size--medium);
}

/* Additional Styling for header-linear */
.wp-block-navigation.blockbase-responsive-navigation-linear .wp-block-pages-list__item .wp-block-pages-list__item__link:hover,
.wp-block-navigation.blockbase-responsive-navigation-linear .wp-block-navigation-link__content:hover {
  text-decoration: underline;
}
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-navigation-item a {
  font-size: var(--wp--custom--font-sizes--normal);
  line-height: 50px;
  margin: 0;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-pages-list__item,
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-navigation-item {
  font-size: var(--wp--custom--font-sizes--normal);
  line-height: 50px;
  margin: 0;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-pages-list__item.has-child .wp-block-pages-list__item__link,
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-pages-list__item.has-child .wp-block-navigation-link__content,
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-navigation-item.has-child .wp-block-pages-list__item__link,
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-navigation-item.has-child .wp-block-navigation-link__content {
  margin-right: 0;
}
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-pages-list__item.has-child .wp-block-navigation__submenu-container,
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-navigation-item.has-child .wp-block-navigation__submenu-container {
  gap: 0;
  padding: 0 19px 0 0;
}
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-pages-list__item.has-child .wp-block-navigation__submenu-container .wp-block-pages-list__item__link,
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-pages-list__item.has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-navigation-item.has-child .wp-block-navigation__submenu-container .wp-block-pages-list__item__link,
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-navigation-item.has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  padding: 0;
  font-size: var(--wp--custom--font-sizes--x-small);
  line-height: 40px;
}
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-navigation__container {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open.has-modal-open .wp-block-navigation__responsive-container-content {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.wp-block-navigation.blockbase-responsive-navigation-linear.is-responsive .wp-block-navigation__responsive-container.is-menu-open .wp-block-social-links {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content:hover {
  color: #aaa;
}

@media screen and (max-width: 768px) {
  .wp-block-navigation .wp-block-navigation-item__content {
    font-size: var(--wp--preset--font-size--medium);
  }
}
@media screen and (max-width: 768px) {
  .site-header__burger-menu {
    display: block !important;
  }
  .sidebar {
    position: absolute;
    z-index: 9999;
    top: 60px;
    width: 100%;
    height: 100%;
  }
  .sidebar #menu-navigation {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background: white;
  }
  .site-header__navigation .menu {
    display: none !important;
  }
  .subnavi {
    display: none !important;
  }
}
nav.site-header__navigation .menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--wp--custom--gap--horizontal);
  padding: 10px 30px;
}
@media screen and (min-width: 900px) {
  nav.site-header__navigation .menu {
    padding: 10px 30px 10px 0;
  }
}
nav.site-header__navigation .menu {
  background-color: var(--wp--custom--color--background);
  border-bottom: 1px solid var(--wp--custom--color--border);
  list-style: none;
  margin: 0;
}
nav.site-header__navigation .menu .menu-item {
  overflow-wrap: break-word;
}
nav.site-header__navigation .menu .menu-item a {
  white-space: nowrap;
  text-decoration: none;
  color: black;
}
nav.site-header__navigation .menu .menu-item a:hover {
  color: #aaa;
}
nav.site-header__navigation .menu .menu-item.current-menu-item a, nav.site-header__navigation .menu .menu-item.current-page-parent a, nav.site-header__navigation .menu .menu-item.current-page-ancestor a {
  font-weight: bold;
}

nav.site-header__navigation .sub-menu {
  display: none;
}

.subnavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 15px !important;
  font-size: 16px;
  position: relative;
}

.mega-menu__button {
  height: 100%;
}
.mega-menu__button .wp-block-button__link {
  background: black;
  color: white;
  border: none !important;
  border-radius: 0;
  padding: 8px 20px 8px 42px;
  position: relative;
  text-transform: uppercase;
  letter-spacing: 1.8px;
  font-size: 0.9em;
  font-weight: 400;
  white-space: nowrap;
  margin-bottom: 0;
}
.mega-menu__button .wp-block-button__link:before {
  content: url("assets/images/cup.svg");
  width: 15px;
  height: 15px;
  position: absolute;
  left: 13px;
}
.mega-menu__button .wp-block-button__link:hover, .mega-menu__button .wp-block-button__link:focus, .mega-menu__button .wp-block-button__link:active, .mega-menu__button .wp-block-button__link.active {
  background-color: #666;
  color: white;
}

.hidden {
  display: none !important;
}

.subnavi {
  font-size: 16px;
}

.subnavi__search .wp-block-search__button {
  background-color: black;
  background: black;
  color: white;
  border: none !important;
  border-radius: 0;
  padding: 8px 20px 8px 20px;
  position: relative;
  font-size: 0.9em;
  font-weight: 400;
}
.subnavi__search .wp-block-search__button:hover, .subnavi__search .wp-block-search__button:focus, .subnavi__search .wp-block-search__button:active, .subnavi__search .wp-block-search__button.active {
  background-color: #666 !important;
  color: white !important;
}
.subnavi__search .wp-block-search__label {
  display: none;
}

.mega-menu__content {
  position: absolute;
}
@media screen and (min-width: 1024px) {
  .mega-menu__content {
    width: 1000px;
    left: -200px;
  }
}
@media screen and (min-width: 1440px) {
  .mega-menu__content {
    width: 1100px;
    left: -250px;
    content: "jo";
  }
}
.mega-menu__content {
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background: white;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 60px;
  z-index: 10;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.mega-menu__content.active {
  opacity: 1;
  pointer-events: auto;
}
.mega-menu__content.active .wp-block-columns {
  gap: 0 !important;
}
.mega-menu__column {
  padding: 1rem 0;
}
.mega-menu__column h3 {
  text-align: left !important;
  font-weight: bold;
  font-size: 1.2rem;
}
@media screen and (min-width: 1024px) {
  .mega-menu__column h3 {
    font-size: 1.4rem;
  }
}
.mega-menu__column h3 {
  margin-bottom: 1rem;
  padding: 1rem;
  font-family: "Lato", Arial, sans-serif;
  margin: 0 !important;
}
@media screen and (min-width: 1024px) {
  .mega-menu__column h3 {
    padding: 1rem 2rem;
  }
}
.mega-menu__bestseller {
  width: 250px;
}
@media screen and (min-width: 1440px) {
  .mega-menu__bestseller {
    width: 400px;
  }
}
.mega-menu__bestseller {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-left: 1px solid #ccc;
}
.mega-menu__bestseller figure {
  padding: 0 1em;
}
@media screen and (min-width: 1024px) {
  .mega-menu__bestseller figure {
    padding: 0 2em;
  }
}
.mega-menu__bestseller .wp-block-navigation__container {
  gap: 2px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: unset;
      -ms-flex-align: unset;
          align-items: unset;
}
.mega-menu__bestseller .wp-block-navigation-item {
  -webkit-box-align: unset;
      -ms-flex-align: unset;
          align-items: unset;
}
.mega-menu__sortiment {
  background: #eee;
}
.mega-menu__sortiment .wp-block-navigation__container {
  gap: 2px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: unset;
      -ms-flex-align: unset;
          align-items: unset;
}
.mega-menu__sortiment .wp-block-navigation-item {
  -webkit-box-align: unset;
      -ms-flex-align: unset;
          align-items: unset;
}
.mega-menu__menu {
  list-style-type: none;
  font-size: 0.9em;
  padding: 0;
  margin: 0;
}
.mega-menu__menu li {
  border-bottom: 1px solid #ccc;
  padding: 0;
}
.mega-menu__menu li a {
  display: block;
  text-align: left;
  padding: 1rem;
}
@media screen and (min-width: 1024px) {
  .mega-menu__menu li a {
    padding: 1rem 2rem;
  }
}
.mega-menu__menu li a {
  width: 100%;
  color: black;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 0.8rem;
}
@media screen and (min-width: 1024px) {
  .mega-menu__menu li a {
    font-size: 0.9rem;
  }
}
.mega-menu__menu li a {
  letter-spacing: 0.1rem;
}
.mega-menu__menu--left {
  font-weight: bold;
}
.mega-menu__menu--left li.current-menu-item a {
  background: black;
  color: white;
}
.mega-menu__menu--left li a:hover {
  background: black;
  color: white !important;
}
.mega-menu__menu--center li {
  border: none;
}
.mega-menu__menu--center li .current-menu-item a {
  font-weight: bold;
}
.mega-menu__menu--center li a:hover {
  font-weight: bold;
}

.coffee-nav {
  padding: 2em 1em;
  margin: 0;
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  background: #efefef;
}
.coffee-nav li {
  font-weight: normal;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.coffee-nav li.current-menu-item a {
  background: #000;
  color: white;
  font-weight: bold;
}
.coffee-nav li a {
  background: #000;
  color: white;
  text-decoration: none;
  font-weight: normal;
  border: 1px solid #333;
  padding: 0.3em 0.5em;
  display: block;
  text-align: center;
}
.coffee-nav li a:hover {
  color: white;
  background: #000;
  text-decoration: underline;
}

:root {
  --bar-width: 40px;
  --bar-height: 8px;
  --hamburger-gap: 6px;
  --foreground: #333;
  --background: white;
  --hamburger-margin: 8px;
  --animation-timing: 200ms ease-in-out;
  --hamburger-height: calc(var(--bar-height) * 3 + var(--hamburger-gap) * 2);
}

.hamburger-wrapper {
  display: none;
}

.hamburger-menu {
  --x-width: calc(var(--hamburger-height) * 1.41421356237);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--hamburger-gap);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  position: absolute;
  top: var(--hamburger-margin);
  left: var(--hamburger-margin);
  z-index: 2;
  cursor: pointer;
}

.hamburger-menu:has(input:focus-visible)::before,
.hamburger-menu:has(input:focus-visible)::after,
.hamburger-menu input:focus-visible {
  border: 1px solid var(--background);
  -webkit-box-shadow: 0 0 0 1px var(--foreground);
          box-shadow: 0 0 0 1px var(--foreground);
}

.hamburger-menu::before,
.hamburger-menu::after,
.hamburger-menu input {
  content: "";
  width: var(--x-width);
  height: var(--bar-height);
  background-color: var(--foreground);
  -webkit-transform-origin: left center;
          transform-origin: left center;
  scale: calc(var(--bar-width) / var(--x-width)) 1;
  -webkit-transition: opacity var(--animation-timing), scale var(--animation-timing), rotate var(--animation-timing), translate var(--animation-timing), background-color var(--animation-timing);
  transition: opacity var(--animation-timing), scale var(--animation-timing), rotate var(--animation-timing), translate var(--animation-timing), background-color var(--animation-timing);
}

.hamburger-menu input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  margin: 0;
  outline: none;
  pointer-events: none;
}

.hamburger-menu:has(input:checked)::before {
  rotate: 45deg;
  scale: 1 1;
  translate: 0 calc(var(--bar-height) / -2);
}

.hamburger-menu:has(input:checked)::after {
  rotate: -45deg;
  scale: 1 1;
  translate: 0 calc(var(--bar-height) / 2);
}

.hamburger-menu input:checked {
  opacity: 0;
  scale: 0 1;
}

.sidebar {
  padding: 0.5rem 1rem;
  padding-top: calc(var(--hamburger-height) + var(--hamburger-margin) + 1rem);
  background-color: #e6ece9;
  color: var(--foreground);
  max-width: 500px;
  width: 300px;
  min-height: 100vh;
  position: absolute;
  right: 49px;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity var(--animation-timing), visibility var(--animation-timing);
  transition: opacity var(--animation-timing), visibility var(--animation-timing);
}
.sidebar ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
.sidebar ul li:hover a {
  text-decoration: underline;
}
.sidebar ul li a {
  color: var(----foreground);
  text-decoration: none;
  font-size: 1.2rem;
}
.sidebar ul li a:hover {
  text-decoration: underline;
}

.hamburger-menu:has(input:checked) + .sidebar {
  opacity: 1;
  visibility: visible;
}

nav.woocommerce-breadcrumb {
  color: #aaa;
  margin: 2em 0;
  text-transform: initial;
  font-size: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
nav.woocommerce-breadcrumb a {
  color: #aaa;
  text-decoration: none;
}
nav.woocommerce-breadcrumb a:hover {
  color: #000 !important;
  text-decoration: underline;
}
nav.woocommerce-breadcrumb a:visited {
  color: #aaa;
}
nav.woocommerce-breadcrumb a:last-child {
  color: #000;
}
nav.woocommerce-breadcrumb a:first-child {
  color: #aaa;
  content: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M2%2015V6.8a1%201%200%200%201%20.308-.722l5-4.791a1%201%200%200%201%201.384%200l5%204.791A1%201%200%200%201%2014%206.8V15h-4v-5H6v5z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  height: 15px;
}
nav.woocommerce-breadcrumb .delimiter {
  color: #aaa;
  height: 15px;
  margin-bottom: 2px;
  width: 12px;
  display: inline-block;
  margin: 0 9px;
  position: relative;
}
nav.woocommerce-breadcrumb .delimiter svg {
  fill: currentColor;
  height: auto;
  max-height: 100%;
  width: 10px;
  position: absolute;
}

.page-no-hero .page-no-hero__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 3rem 1.25rem;
}
.page-no-hero .page-no-hero__content {
  max-width: 900px;
  width: 100%;
  background: #ffffff;
  padding: 2.5rem;
  -webkit-box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
          box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
  border-radius: 8px;
  line-height: 1.6;
  color: #333447;
  -webkit-transition: -webkit-transform 280ms cubic-bezier(0.2, 0.9, 0.2, 1), -webkit-box-shadow 280ms cubic-bezier(0.2, 0.9, 0.2, 1);
  transition: -webkit-transform 280ms cubic-bezier(0.2, 0.9, 0.2, 1), -webkit-box-shadow 280ms cubic-bezier(0.2, 0.9, 0.2, 1);
  transition: transform 280ms cubic-bezier(0.2, 0.9, 0.2, 1), box-shadow 280ms cubic-bezier(0.2, 0.9, 0.2, 1);
  transition: transform 280ms cubic-bezier(0.2, 0.9, 0.2, 1), box-shadow 280ms cubic-bezier(0.2, 0.9, 0.2, 1), -webkit-transform 280ms cubic-bezier(0.2, 0.9, 0.2, 1), -webkit-box-shadow 280ms cubic-bezier(0.2, 0.9, 0.2, 1);
  will-change: transform, box-shadow;
}
.page-no-hero .page-no-hero__content h1, .page-no-hero .page-no-hero__content h2 {
  margin-top: 3rem;
  margin-bottom: 1rem;
}
.page-no-hero .page-no-hero__content h3, .page-no-hero .page-no-hero__content h4, .page-no-hero .page-no-hero__content h5 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}
.page-no-hero .page-no-hero__content p {
  margin-bottom: 1rem;
}
@media (max-width: 800px) {
  .page-no-hero .page-no-hero__container {
    padding: 2rem 1rem;
  }
  .page-no-hero .page-no-hero__content {
    padding: 1.25rem;
    border-radius: 6px;
  }
}
.page-no-hero .page-no-hero__content:focus-within {
  -webkit-box-shadow: 0 24px 60px rgba(0, 0, 0, 0.16);
          box-shadow: 0 24px 60px rgba(0, 0, 0, 0.16);
}
@media (prefers-reduced-motion: reduce) {
  .page-no-hero .page-no-hero__content {
    -webkit-transition: none;
    transition: none;
    -webkit-transform: none;
            transform: none;
  }
}

.page-id-2725 .beans-and-cup {
  position: relative;
}
.page-id-2725 .wp-block-image.cup {
  position: relative;
}
.page-id-2725 .wp-block-image.beans {
  position: absolute;
  top: 20px;
}
.page-id-2725 h1 {
  margin-bottom: 0.5em;
  letter-spacing: 0;
  font-family: "Vollkorn", serif;
}
.page-id-2725 h3 {
  margin-top: 0;
}
.page-id-2725 hr {
  width: 50%;
  margin-left: 0;
  margin-right: 50%;
  border: none;
  background: none;
  border-bottom: 2px solid black;
  margin-top: 2em;
  margin-bottom: 2em;
}
.page-id-2725 .content {
  padding: 3em 2em 3em 0;
}
.page-id-2725 .relative {
  position: relative;
}
.page-id-2725 .absolute {
  position: absolute;
}
.page-id-2725 .heidelbeere {
  bottom: 15%;
  right: 34%;
  width: 100px;
}
.page-id-2725 .himbeere {
  bottom: 15%;
  right: 61%;
  width: 100px;
}
.page-id-2725 .blume {
  bottom: -12%;
  right: 61%;
  width: 150px;
}
.page-id-2725 .orange {
  bottom: -1%;
  right: 35%;
  width: 200px;
}
.page-id-2725 .uppercase {
  text-transform: uppercase;
}

.sortiment {
  background: #f1e7d8;
  padding: 100px 60px;
}
.sortiment.alignwide > .wp-block-group__inner-container, .sortiment.alignfull > .wp-block-group__inner-container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.sortiment__title {
  font-family: "Vollkorn SemiBold", "Vollkorn", serif;
  font-size: 52px;
  font-weight: 400;
  text-transform: initial;
  line-height: 1;
  color: #333447;
  margin: 0 0 10px 0;
}
@media (max-width: 1024px) {
  .sortiment__title {
    font-size: 44px;
  }
}
@media (max-width: 768px) {
  .sortiment__title {
    font-size: 36px;
    margin-bottom: 16px;
  }
}
@media (max-width: 480px) {
  .sortiment__title {
    font-size: 28px;
    margin-bottom: 12px;
  }
}
.sortiment__label {
  font-family: "Lato";
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #ca792b;
}
@media (max-width: 768px) {
  .sortiment__label {
    font-size: 11px;
    margin-bottom: 8px;
  }
}
.sortiment__element {
  padding: 20px;
  font-size: 0.9rem;
  font-family: "Lato";
  font-weight: 300;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.sortiment__element h3 {
  font-size: 1.5rem;
  text-transform: capitalize;
}
.sortiment__element a {
  text-decoration: none;
  font-size: 0.7rem;
  letter-spacing: 0.1em;
}
.sortiment__grid {
  margin-top: 3em;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
@media (max-width: 1024px) {
  .sortiment__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 480px) {
  .sortiment__grid {
    grid-template-columns: 1fr;
  }
}
.sortiment__title-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 16px 40px;
}
.sortiment__title {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 320px;
          flex: 1 1 320px;
}
.sortiment__claim {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font-size: 0.9rem;
  width: 380px;
  max-width: 100%;
  color: #6a5145;
}

.sortiment__grid .espresso {
  content: "Dicht, süß und präzise geröstet – für den perfekten Shot.";
  background: #2b1b16;
  color: #f6f0e6;
}
.sortiment__grid .espresso a {
  color: #f6f0e6;
}
.sortiment__grid .spezialitaeten {
  content: "Kaffees mit klarer Herkunft, komplexer Süße und überraschenden Nuancen.";
  background: #ffffff;
  color: #2b1b16;
}
.sortiment__grid .aromatisierte-kaffees {
  content: "Sanfte Kompositionen für alle, die Kaffee neu entdecken möchten.";
  background: #ffffff;
  color: #2b1b16;
}
.sortiment__grid .blends {
  content: "Ausbalancierte Mischungen für den täglichen Lieblingsmoment.";
  background: #b7a384;
  color: #2b1b16;
}
.sortiment__grid .raritaeten {
  content: "Seltene Lots, saisonal ausgewählt und nur kurz verfügbar.";
  background: #b75b3a;
  color: #ffffff;
}
.sortiment__grid .raritaeten a {
  color: #ffffff;
}
.sortiment__grid .entkoffeiniert {
  content: "Voller Geschmack, sanfte Wirkung – für jede Tageszeit.";
  background: #7f9db0;
  color: #2b1b16;
}
.sortiment__grid .schonkaffee {
  content: "Besonders schonend geröstet und dadurch mild und säurearm im Geschmack.";
  background: #9e6190;
  color: #ffffff;
}
.sortiment__grid .probierpakete {
  content: "Drei Röstungen, eine Entdeckungsreise durch unser Sortiment.";
  background: linear-gradient(135deg, #ffffff 0%, #ffffff 33%, #999999 33%, #999999 66%, rgb(71, 59, 49) 66%, rgb(71, 59, 49) 100%);
  color: #2b1b16;
}
.sortiment__grid .bio-kaffees {
  content: "Sorgfältig angebaut, transparent gehandelt und wunderbar klar.";
  background: #e7d9c6;
  color: #2b1b16;
}

.call-to-action {
  margin: 3em 0;
}
.call-to-action h2 {
  margin-top: inherit;
}

css .wp-block-details {
  background-color: #ffffff;
  border: 1px solid #eaeaea;
  border-radius: 8px;
  margin-bottom: 16px;
  -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
          box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
  -webkit-transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  overflow: hidden;
}

/* Hover-Effekt: Hebt sich elegant ab */
.wp-block-details:hover {
  border-color: #d1d1d1;
  -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
          box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

/* Klickbare Überschrift */
.wp-block-details summary {
  padding: 18px 24px;
  font-size: 16px;
  font-weight: 600;
  color: #2c2c2c;
  cursor: pointer;
  list-style: none;
  position: relative;
}

/* Standard-Pfeile ausblenden */
.wp-block-details summary::-webkit-details-marker,
.wp-block-details summary::marker {
  display: none;
}

/* Das Icon rechts: Ein dünnes Plus-Zeichen (+) */
.wp-block-details summary::after {
  content: "+";
  position: absolute;
  right: 24px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 22px;
  font-weight: 300;
  color: #8c8c8c;
  -webkit-transition: color 0.3s ease, -webkit-transform 0.3s ease;
  transition: color 0.3s ease, -webkit-transform 0.3s ease;
  transition: transform 0.3s ease, color 0.3s ease;
  transition: transform 0.3s ease, color 0.3s ease, -webkit-transform 0.3s ease;
}

/* Wenn geöffnet: Das Plus wird zum Minus (-) und färbt sich dunkler */
.wp-block-details[open] summary::after {
  content: "−";
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
  color: #2c2c2c;
}

/* Wenn geöffnet: Überschrift bekommt eine subtile Trennlinie unten */
.wp-block-details[open] summary {
  border-bottom: 1px solid #f5f5f5;
}

/* Der ausgeklappte Text-Bereich */
.wp-block-details > :not(summary) {
  padding: 24px;
  background-color: #fafafa; /* Minimal dunklerer Hintergrund für den Inhalt */
  color: #555555;
  line-height: 1.6;
  -webkit-animation: slideDown 0.35s ease-out;
          animation: slideDown 0.35s ease-out;
}

/* Sanftes Einblenden des Textes */
@-webkit-keyframes slideDown {
  from {
    opacity: 0;
    -webkit-transform: translateY(-8px);
            transform: translateY(-8px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes slideDown {
  from {
    opacity: 0;
    -webkit-transform: translateY(-8px);
            transform: translateY(-8px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
html,
body {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  left: 0;
  top: 0;
  font-size: 100%;
}

.font-light {
  font-weight: 300;
}

.font-regular {
  font-weight: 500;
}

.font-heavy {
  font-weight: 900;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.center {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.justify {
  text-align: justify;
}

.hidden-sm {
  display: none;
}

.container {
  margin: 0 auto !important;
  width: 96%;
}

@media (min-width: 540px) {
  .container {
    max-width: 540px;
  }
}
@media (min-width: 720px) {
  .container {
    max-width: 720px;
  }
}
@media (min-width: 960px) {
  .container {
    max-width: 960px;
  }
}
@media (min-width: 1120px) {
  .container {
    max-width: 1080px;
  }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1080px;
  }
}
.container .alignfull {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.container .alignwide {
  width: 100vw;
  max-width: 1440px;
  margin-left: calc(50% - min(50vw, 720px));
  margin-right: calc(50% - min(50vw, 720px));
}

.row {
  position: relative;
  width: 100%;
}

.row [class^=col] {
  float: left;
  margin: 0.5rem 2%;
  min-height: 0.125rem;
}

.row::after {
  content: "";
  display: table;
  clear: both;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
  width: 96%;
}

.col-1-sm {
  width: 4.3333333333%;
}

.col-2-sm {
  width: 12.6666666667%;
}

.col-3-sm {
  width: 21%;
}

.col-4-sm {
  width: 29.3333333333%;
}

.col-5-sm {
  width: 37.6666666667%;
}

.col-6-sm {
  width: 46%;
}

.col-7-sm {
  width: 54.3333333333%;
}

.col-8-sm {
  width: 62.6666666667%;
}

.col-9-sm {
  width: 71%;
}

.col-10-sm {
  width: 79.3333333333%;
}

.col-11-sm {
  width: 87.6666666667%;
}

.col-12-sm {
  width: 96%;
}

@media only screen and (min-width: 45em) {
  .col-1 {
    width: 4.3333333333%;
  }
  .col-2 {
    width: 12.6666666667%;
  }
  .col-3 {
    width: 21%;
  }
  .col-4 {
    width: 29.3333333333%;
  }
  .col-5 {
    width: 37.6666666667%;
  }
  .col-6 {
    width: 46%;
  }
  .col-7 {
    width: 54.3333333333%;
  }
  .col-8 {
    width: 62.6666666667%;
  }
  .col-9 {
    width: 71%;
  }
  .col-10 {
    width: 79.3333333333%;
  }
  .col-11 {
    width: 87.6666666667%;
  }
  .col-12 {
    width: 96%;
  }
  .hidden-sm {
    display: block;
  }
}
.entry-header.entry-header--with-image {
  overflow: hidden;
  border-bottom: 3px solid black;
  border-top: 3px solid black;
  margin: 0 !important;
}
.entry-header.entry-header--with-image .post-thumbnail {
  margin: 0 !important;
  padding: 0 !important;
  position: relative;
  min-height: 60vh;
  height: 60vh;
}
.entry-header.entry-header--with-image .post-thumbnail img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: relative;
  z-index: 1;
}
.page-id-18136 .post-thumbnail:after {
  content: "";
  display: block;
  background: url("assets/images/Element-2.svg") no-repeat center center;
  position: absolute;
  top: 0;
  height: 75.8%;
  width: 69%;
  z-index: 2;
  padding: 0 12%;
  -webkit-transform: translateY(20%) translateX(-50%);
          transform: translateY(20%) translateX(-50%);
  left: 50%;
}

.wp-block-cb-carousel-v2 {
  height: 100%;
}
.wp-block-cb-carousel-v2 .swiper {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.wp-block-cb-carousel-v2 .swiper .cb-slide {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  overflow: visible;
}
.wp-block-cb-carousel-v2 .swiper .cb-slide figure {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.wp-block-cb-carousel-v2 .swiper .cb-slide figure a {
  display: block;
  width: 100%;
  height: 100%;
}
.wp-block-cb-carousel-v2 .swiper .cb-slide figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.site-footer:not(.entry-footer) {
  background: url("assets/images/tiki-und-bohnen.png") no-repeat center center;
  background-size: cover;
}
.site-footer .site-footer__logo {
  margin: 0 auto;
  width: 200px;
  text-align: center;
  padding-bottom: 3em;
}
.site-footer p.small {
  font-size: 12px;
  margin: 0;
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
  margin-bottom: 2em;
  text-transform: uppercase;
}
.site-footer img {
  max-width: 80%;
  margin: 0 10%;
}
.site-footer .footer__linie {
  width: 100%;
  height: 1px;
  margin: 2em auto 4em auto;
}
.site-footer .site-footer__visit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 578px) {
  .site-footer .site-footer__visit {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
  }
}
.site-footer .site-footer__service-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .site-footer .site-footer__service-links {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
  }
}
.site-footer .site-footer__service-links {
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
}
.site-footer .site-footer__service-links ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.site-footer .site-footer__service-links a {
  display: block;
  color: black;
  margin-bottom: 0.5em;
}
.site-footer .site-footer__service-links a:hover {
  color: #333447;
  text-decoration: underline;
}
.site-footer .site-footer__service-links .ec-widerruf-button > a {
  display: inline-block;
  margin: 0.25em 0 0.75em;
  padding: 0.45em 1em;
  border: 1.5px solid #333447;
  border-radius: 6px;
  background: #fff;
  color: #333447;
  font-family: "Lato Bold", Arial, sans-serif;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
}
.site-footer .site-footer__service-links .ec-widerruf-button > a:hover, .site-footer .site-footer__service-links .ec-widerruf-button > a:focus-visible {
  background: #333447;
  color: #fff;
  text-decoration: none;
}
.site-footer .site-footer__service-links .ec-widerruf-button > a:focus-visible {
  outline: 2px solid #333447;
  outline-offset: 2px;
}
.site-footer .site-footer__copyright {
  text-align: center;
  padding: 2em 0;
  font-size: 0.875em;
}

/* ==== Explorer Header + Footer, Startseiten-Konzept (2026-11-10) ==== */
/* Vorlage: startseite/startseite-entwurf.html (.topbar, .nav, .foot). Markup: template-parts/header.php, footer.php.
   Alle Klassen mit ec- (kein Konflikt mit den alten .site-header/.site-footer-Regeln). Bis zum nächsten Sass-Lauf
   zusätzlich von Hand in style.css/style.min.css. Farben aus dem Konzept: Espresso, Terrakotta, Creme. */
:root {
  --ec-espresso: #1e1611;
  --ec-terra: #8a5a34;
  --ec-terra-light: #d08c5c;
  --ec-cream: #f9f7f5;
  --ec-sand: #efe7dd;
  --ec-nav-h: 80px;
}

/* ---- Infoleiste ---- */
.ec-topbar {
  background: var(--ec-espresso);
  color: var(--ec-sand);
  font: 400 13.5px/1.3 "Lato", Arial, sans-serif;
}

.ec-topbar .ec-topbar__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
  padding: 10px 0;
  list-style: none;
}

.ec-topbar__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  padding: 0 22px;
  white-space: nowrap;
}

.ec-topbar__item + .ec-topbar__item {
  border-left: 1px solid rgba(239, 231, 221, 0.18);
}

.ec-topbar__item svg {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  color: var(--ec-terra-light);
}

.ec-topbar__item strong {
  font-weight: 700;
  color: #fff;
}

@media screen and (max-width: 820px) {
  .ec-topbar__item--origin {
    display: none;
  }
}
@media screen and (max-width: 560px) {
  .ec-topbar__item--award {
    display: none;
  }
  .ec-topbar__item {
    padding: 0;
  }
}
/* ---- Navigation (bleibt oben stehen, Creme mit Unschärfe) ---- */
.ec-nav {
  position: sticky;
  top: 0;
  z-index: 30;
  background: rgba(249, 247, 245, 0.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(51, 52, 71, 0.07);
}

body.admin-bar .ec-nav {
  top: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .ec-nav {
    top: 46px;
  }
}
.ec-nav .ec-nav__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 16px;
  height: var(--ec-nav-h);
}

.ec-nav a:focus-visible,
.ec-nav input:focus-visible,
.ec-nav button:focus-visible {
  outline: 2px solid var(--ec-terra);
  outline-offset: 2px;
}

.ec-nav svg.ec-i {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ec-nav .ec-brand {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  color: var(--ec-ink);
  text-decoration: none;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}

.ec-nav .ec-brand:hover {
  color: var(--ec-terra);
}

.ec-brand svg {
  display: block;
  height: auto;
}

.ec-brand__full {
  width: clamp(190px, 18vw, 232px);
}

.ec-brand .ec-brand__icon {
  display: none;
  width: 34px;
}

.ec-logo-sprite {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

/* Menü */
.ec-menu .ec-menu__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(16px, 1.8vw, 26px);
  margin: 0;
  padding: 0;
  list-style: none;
  font: 700 12px/1 "Lato Bold", "Lato", Arial, sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.ec-menu__list li {
  margin: 0;
}

.ec-menu__list a {
  position: relative;
  display: block;
  padding-block: 4px;
  color: var(--ec-ink);
  text-decoration: none;
  white-space: nowrap;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}

.ec-menu__list a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background: var(--ec-terra);
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: left center;
          transform-origin: left center;
  -webkit-transition: -webkit-transform 0.25s;
  transition: -webkit-transform 0.25s;
  transition: transform 0.25s;
  transition: transform 0.25s, -webkit-transform 0.25s;
}

.ec-menu__list a:hover,
.ec-menu__list .current-menu-item > a,
.ec-menu__list .current-menu-ancestor > a {
  color: var(--ec-terra);
}

.ec-menu__list a:hover::after,
.ec-menu__list .current-menu-item > a::after,
.ec-menu__list .current-menu-ancestor > a::after {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
}

.ec-menu__extra {
  display: none;
}

/* Rechts: Kaffee-Finder, Suche, Konto, Warenkorb */
.ec-nav__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
}

.ec-nav .ec-finder {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  margin-right: 6px;
  padding: 9px 16px;
  border-radius: 999px;
  background: var(--ec-ink);
  color: #fff;
  font: 700 11px/1 "Lato Bold", "Lato", Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
}

.ec-nav .ec-finder:hover {
  background: var(--ec-terra);
  color: #fff;
}

.ec-finder svg {
  width: 14px;
  height: 14px;
}

.ec-nav .ec-search {
  position: relative;
  display: block;
  width: 190px;
  margin: 0;
}

.ec-nav .ec-search input[type=search] {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  display: block;
  width: 100%;
  height: 36px;
  margin: 0;
  padding: 0 34px 0 14px;
  border: 1px solid #e7ddd0;
  border-radius: 999px;
  background: #fff;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: var(--ec-text, #404040);
  font: 400 13px/1 "Lato", Arial, sans-serif;
}

.ec-nav .ec-search input[type=search]:focus {
  outline: none;
  border-color: var(--ec-terra);
  -webkit-box-shadow: 0 0 0 1px var(--ec-terra);
          box-shadow: 0 0 0 1px var(--ec-terra);
}

.ec-nav .ec-search__submit {
  position: absolute;
  top: 50%;
  right: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #6b6b6b;
  cursor: pointer;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.ec-nav .ec-search__submit:hover {
  color: var(--ec-terra);
}

.ec-search__submit svg {
  width: 14px;
  height: 14px;
}

.ec-nav .ec-ibtn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 38px;
  height: 38px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: var(--ec-ink);
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
}

.ec-nav .ec-ibtn:hover {
  background: #f1ebe3;
  color: var(--ec-ink);
}

.ec-ibtn svg {
  width: 20px;
  height: 20px;
}

.ec-ibtn .ec-cart__count {
  position: absolute;
  top: 1px;
  right: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-width: 16px;
  height: 16px;
  padding: 0 3px;
  border: 2px solid var(--ec-cream);
  border-radius: 8px;
  background: var(--ec-terra);
  color: #fff;
  font: 700 10px/12px "Lato Bold", "Lato", Arial, sans-serif;
  text-align: center;
}

/* Menü-Knopf nur auf schmalen Bildschirmen */
.ec-nav .ec-burger {
  display: none;
}

.ec-burger__bars,
.ec-burger__bars::before,
.ec-burger__bars::after {
  display: block;
  width: 18px;
  height: 2px;
  border-radius: 1px;
  background: currentColor;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: transform 0.2s, opacity 0.2s;
  transition: transform 0.2s, opacity 0.2s, -webkit-transform 0.2s;
}

.ec-burger__bars {
  position: relative;
}

.ec-burger__bars::before,
.ec-burger__bars::after {
  content: "";
  position: absolute;
  left: 0;
}

.ec-burger__bars::before {
  top: -6px;
}

.ec-burger__bars::after {
  top: 6px;
}

.ec-nav.is-open .ec-burger__bars {
  background: transparent;
}

.ec-nav.is-open .ec-burger__bars::before {
  top: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.ec-nav.is-open .ec-burger__bars::after {
  top: 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

@media screen and (max-width: 1060px) {
  /* nur das Kompass-Symbol; der Text bleibt für Screenreader (aria-label) */
  .ec-nav .ec-finder--bar {
    width: 38px;
    height: 38px;
    margin-right: 0;
    padding: 0;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .ec-finder--bar span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }
  .ec-finder--bar svg {
    width: 18px;
    height: 18px;
  }
}
@media screen and (max-width: 1000px) {
  .ec-nav .ec-search {
    width: 150px;
  }
}
@media screen and (max-width: 860px) {
  .ec-nav .ec-burger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .ec-nav .ec-finder--bar {
    display: none;
  }
  /* Menü klappt als Fläche unter der Leiste auf */
  .ec-nav .ec-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    padding: 8px 2% 20px;
    background: var(--ec-cream);
    border-bottom: 1px solid rgba(51, 52, 71, 0.12);
    -webkit-box-shadow: 0 12px 24px rgba(30, 22, 17, 0.12);
            box-shadow: 0 12px 24px rgba(30, 22, 17, 0.12);
  }
  .ec-nav.is-open .ec-menu {
    display: block;
  }
  .ec-menu .ec-menu__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
    font-size: 14px;
  }
  .ec-menu__list li + li {
    border-top: 1px solid rgba(51, 52, 71, 0.08);
  }
  .ec-menu__list a {
    padding-block: 15px;
  }
  .ec-menu__list a::after {
    display: none;
  }
  .ec-menu__extra {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 14px;
    padding-top: 16px;
    border-top: 1px solid rgba(51, 52, 71, 0.08);
  }
  .ec-nav .ec-menu__extra .ec-finder {
    margin-right: 0;
    padding: 12px 20px;
  }
  .ec-menu__extra .ec-search--menu {
    display: none;
    width: 100%;
  }
}
@media screen and (max-width: 560px) {
  .ec-nav .ec-nav__actions .ec-search {
    display: none;
  }
  .ec-menu__extra .ec-search--menu {
    display: block;
  }
  .ec-brand .ec-brand__full {
    width: clamp(170px, 40vw, 232px);
  }
}
@media screen and (max-width: 399px) {
  .ec-brand .ec-brand__full {
    display: none;
  }
  .ec-brand .ec-brand__icon {
    display: block;
  }
}
/* Beim Scrollen bleibt die Leiste stehen: Sticky-Leisten der Shop-Übersicht rutschen darunter */
.ec-overview-chips {
  top: var(--ec-nav-h, 80px);
}

body.admin-bar .ec-overview-chips {
  top: calc(var(--ec-nav-h, 80px) + 32px);
}

/* ---- Footer ---- */
.ec-foot {
  margin-top: 4rem;
  padding-block: 48px 28px;
  background: var(--ec-espresso);
  color: #cbbfb3;
  font-size: 0.95rem;
  line-height: 1.6;
}

.ec-foot p {
  margin: 0;
}

.ec-foot a {
  color: #cbbfb3;
  font-family: "Lato", Arial, sans-serif;
  font-weight: 400;
  letter-spacing: normal;
  text-transform: none;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.ec-foot a:hover {
  color: #fff;
}

.ec-foot a:focus-visible {
  outline: 2px solid var(--ec-terra-light);
  outline-offset: 2px;
}

.ec-foot .ec-foot__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  padding-bottom: 2em;
}

.ec-foot .ec-foot__h {
  margin-bottom: 8px;
  font-family: "Vollkorn", Georgia, serif;
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.2;
  color: #fff;
}

.ec-foot .ec-foot__bottom {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  margin-top: 36px;
  padding-top: 24px;
  border-top: 1px solid rgba(239, 231, 221, 0.15);
}

.ec-foot__legal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px 22px;
  font-size: 0.9rem;
  font-weight: 400;
  text-transform: none;
}

.ec-foot .ec-foot__widerruf {
  justify-self: center;
  padding: 12px 26px;
  border-radius: 999px;
  background: #fff;
  color: var(--ec-ink);
  font: 700 0.95rem/1 "Lato Bold", "Lato", Arial, sans-serif;
  text-decoration: none;
  white-space: nowrap;
}

.ec-foot .ec-foot__widerruf:hover {
  background: var(--ec-sand);
  color: var(--ec-ink);
}

.ec-foot .ec-foot__pay {
  justify-self: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ec-foot__pay li {
  min-width: 56px;
  margin: 0;
  padding: 7px 10px;
  border-radius: 6px;
  background: #fff;
  color: var(--ec-espresso);
  font: 700 0.8rem/1 "Lato Bold", "Lato", Arial, sans-serif;
  text-align: center;
}

.ec-foot .ec-foot__copy {
  margin-top: 28px !important;
  font-size: 0.8125rem;
  color: #9d9186;
  text-align: center;
}

@media screen and (max-width: 860px) {
  .ec-foot .ec-foot__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ec-foot .ec-foot__bottom {
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
  }
  .ec-foot .ec-foot__widerruf,
  .ec-foot .ec-foot__pay {
    justify-self: start;
  }
  .ec-foot__legal a {
    padding-block: 6px;
  }
}
@media screen and (max-width: 520px) {
  .ec-foot .ec-foot__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (prefers-reduced-motion: reduce) {
  .ec-nav a,
  .ec-nav .ec-ibtn,
  .ec-menu__list a::after,
  .ec-burger__bars,
  .ec-burger__bars::before,
  .ec-burger__bars::after {
    -webkit-transition: none;
    transition: none;
  }
}
/* ==== Ende Explorer Header + Footer ==== */
.absolute {
  position: absolute;
  z-index: 2;
}
.absolute--bottom-right {
  bottom: 0;
  right: 0;
}
.absolute--bottom-left {
  bottom: 0;
  left: 0;
}
.absolute--top-right {
  top: 0;
  right: 0;
}
.absolute--top-left {
  top: 0;
  left: 0;
}
.absolute--bottom-minus {
  bottom: -200px;
}

.relative {
  position: relative;
  z-index: 1;
}/*# sourceMappingURL=style.css.map */
/* Dankeseite nach der Bestellung (explorer/_bestellung-danke.scss) */
body.woocommerce-order-received .woocommerce-order {
  --dk-rand: #e8e2da;
  --dk-label: #6b655e;
  --dk-tinte: #333447;
  --dk-akzent: #8a5a34;
  display: grid;
  gap: 24px;
  max-width: 880px;
  margin: 0 0 56px;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-overview,
body.woocommerce-order-received .woocommerce-order .woocommerce-bacs-bank-details,
body.woocommerce-order-received .woocommerce-order .ec-vorkasse,
body.woocommerce-order-received .woocommerce-order .ec-weiter,
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details .woocommerce-column {
  background: #fff;
  border: 1px solid var(--dk-rand);
  border-radius: 12px;
  padding: 24px 28px;
  margin: 0;
}
body.woocommerce-order-received .woocommerce-order h2,
body.woocommerce-order-received .woocommerce-order .woocommerce-column__title {
  margin: 0 0 16px;
  font: 600 24px/1.25 "Vollkorn", Georgia, serif;
  color: var(--dk-tinte);
  letter-spacing: 0;
  text-transform: none;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-thankyou-order-received {
  position: relative;
  margin: 0;
  padding: 4px 0 4px 64px;
  min-height: 48px;
  display: flex;
  align-items: center;
  background: none;
  border: 0;
  font: 400 20px/1.4 "Lato", Arial, sans-serif;
  color: var(--dk-tinte);
}
body.woocommerce-order-received .woocommerce-order .woocommerce-thankyou-order-received::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--dk-akzent);
  color: #fff;
  font: 700 24px/48px "Lato", Arial, sans-serif;
  text-align: center;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-overview {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px 24px;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-overview::before,
body.woocommerce-order-received .woocommerce-order .woocommerce-order-overview::after {
  display: none;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-overview li {
  margin: 0;
  padding: 0;
  border: 0;
  float: none;
  font: 700 12px/1.3 "Lato", Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--dk-label);
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-overview li strong {
  display: block;
  margin-top: 6px;
  font: 700 19px/1.3 "Lato", Arial, sans-serif;
  letter-spacing: 0;
  text-transform: none;
  color: var(--dk-tinte);
}
body.woocommerce-order-received .woocommerce-order > p:not(.woocommerce-notice) {
  margin: 0;
  font: 400 17px/1.6 "Lato", Arial, sans-serif;
  color: var(--dk-tinte);
}
body.woocommerce-order-received .woocommerce-order .woocommerce-bacs-bank-details .wc-bacs-bank-details-account-name {
  margin: 0 0 18px;
  font: 700 18px/1.3 "Lato", Arial, sans-serif;
  color: var(--dk-tinte);
}
body.woocommerce-order-received .woocommerce-order .woocommerce-bacs-bank-details .wc-bacs-bank-details-account-name::before {
  content: "Kontoinhaber";
  display: block;
  margin-bottom: 6px;
  font: 700 12px/1.3 "Lato", Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--dk-label);
}
body.woocommerce-order-received .woocommerce-order .woocommerce-bacs-bank-details ul.wc-bacs-bank-details {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1.6fr 1fr;
  gap: 16px 24px;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-bacs-bank-details ul.wc-bacs-bank-details::before,
body.woocommerce-order-received .woocommerce-order .woocommerce-bacs-bank-details ul.wc-bacs-bank-details::after {
  display: none;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-bacs-bank-details ul.wc-bacs-bank-details li {
  margin: 0;
  padding: 0;
  border: 0;
  font: 700 12px/1.3 "Lato", Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--dk-label);
}
body.woocommerce-order-received .woocommerce-order .woocommerce-bacs-bank-details ul.wc-bacs-bank-details li strong {
  display: block;
  margin-top: 6px;
  font: 700 18px/1.3 "Lato", Arial, sans-serif;
  letter-spacing: 0.02em;
  text-transform: none;
  color: var(--dk-tinte);
  overflow-wrap: anywhere;
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__lead {
  margin: 0 0 20px;
  font: 400 17px/1.6 "Lato", Arial, sans-serif;
  color: var(--dk-tinte);
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__daten {
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 24px;
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__zeile {
  margin: 0;
  padding: 0;
  min-width: 0;
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__zeile dt {
  margin: 0 0 6px;
  font: 700 12px/1.3 "Lato", Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--dk-label);
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__zeile dd {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  font: 700 18px/1.3 "Lato", Arial, sans-serif;
  color: var(--dk-tinte);
  overflow-wrap: anywhere;
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__zeile--betrag {
  grid-column: 1 / -1;
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__zeile--betrag dd {
  font: 600 32px/1.2 "Vollkorn", Georgia, serif;
  font-variant-numeric: lining-nums;
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__zeile--zweck {
  grid-column: 1 / -1;
  padding: 14px 18px;
  background: #f9f7f5;
  border: 1px solid var(--dk-rand);
  border-radius: 8px;
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__zeile--zweck dd {
  font-size: 20px;
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__zeile--iban {
  grid-column: 1 / -1;
}
body.woocommerce-order-received .woocommerce-order .ec-vorkasse__iban {
  font: 700 18px/1.3 "Lato", Arial, sans-serif;
  letter-spacing: 0.04em;
  overflow-wrap: anywhere;
}
body.woocommerce-order-received .woocommerce-order .ec-kopieren {
  min-height: 36px;
  padding: 6px 16px;
  background: transparent;
  border: 1px solid var(--dk-akzent);
  border-radius: 8px;
  color: var(--dk-akzent);
  font: 700 13px/1.2 "Lato", Arial, sans-serif;
  letter-spacing: 0.02em;
  text-transform: none;
  cursor: pointer;
}
body.woocommerce-order-received .woocommerce-order .ec-kopieren:hover,
body.woocommerce-order-received .woocommerce-order .ec-kopieren:focus-visible {
  background: #f3ece5;
}
body.woocommerce-order-received .woocommerce-order .ec-kopieren.is-kopiert,
body.woocommerce-order-received .woocommerce-order .ec-kopieren.is-kopiert:hover {
  background: var(--dk-akzent);
  color: #fff;
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__schritte {
  list-style: none;
  margin: 0 0 20px;
  padding: 0;
  counter-reset: ec-schritt;
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__schritte li {
  position: relative;
  margin: 0 0 16px;
  padding: 2px 0 0 44px;
  counter-increment: ec-schritt;
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__schritte li::before {
  content: counter(ec-schritt);
  position: absolute;
  left: 0;
  top: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--dk-akzent);
  color: #fff;
  font: 700 14px/28px "Lato", Arial, sans-serif;
  text-align: center;
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__schritte li:last-child {
  margin-bottom: 0;
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__schritte li strong {
  display: block;
  font: 700 17px/1.4 "Lato", Arial, sans-serif;
  color: var(--dk-tinte);
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__schritte li span {
  display: block;
  font: 400 16px/1.5 "Lato", Arial, sans-serif;
  color: var(--dk-label);
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__kontakt {
  margin: 0 0 20px;
  font: 400 14px/1.6 "Lato", Arial, sans-serif;
  color: var(--dk-label);
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__kontakt a {
  color: var(--dk-akzent);
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__weiter {
  margin: 0;
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__knopf {
  display: inline-block;
  padding: 12px 28px;
  background: var(--dk-akzent);
  border-radius: 8px;
  color: #fff;
  font: 700 16px/1.3 "Lato", Arial, sans-serif;
  text-decoration: none;
}
body.woocommerce-order-received .woocommerce-order .ec-weiter__knopf:hover {
  background: var(--dk-tinte);
  color: #fff;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table {
  width: 100%;
  margin: 0;
  border: 0;
  border-collapse: collapse;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table th,
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table td {
  padding: 14px 0;
  border: 0;
  border-bottom: 1px solid var(--dk-rand);
  background: none;
  text-align: left;
  vertical-align: top;
  font: 400 16px/1.5 "Lato", Arial, sans-serif;
  color: var(--dk-tinte);
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table thead th {
  padding-top: 0;
  font: 700 12px/1.3 "Lato", Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--dk-label);
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table th:last-child,
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table td:last-child {
  text-align: right;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table tfoot th {
  font-weight: 700;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table tfoot tr:last-child th,
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table tfoot tr:last-child td {
  padding-top: 18px;
  border-bottom: 0;
  font-size: 19px;
  font-weight: 700;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table .wgm-tax,
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table .product-tax,
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table .price-per-unit {
  display: block;
  font-size: 13px;
  font-weight: 400;
  color: var(--dk-label);
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table .wc-item-meta {
  list-style: none;
  margin: 6px 0 0;
  padding: 0;
  font-size: 14px;
  color: var(--dk-label);
}
body.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table .wc-item-meta p {
  display: inline;
  margin: 0;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details {
  margin: 0;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details .woocommerce-columns--addresses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  width: 100%;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details .woocommerce-columns--addresses::before,
body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details .woocommerce-columns--addresses::after {
  display: none;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details .woocommerce-column {
  float: none;
  width: auto;
}
body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details address {
  margin: 0;
  padding: 0;
  border: 0;
  font: 400 16px/1.6 "Lato", Arial, sans-serif;
  font-style: normal;
  color: var(--dk-tinte);
}
@media (max-width: 720px) {
  body.woocommerce-order-received .woocommerce-order {
    gap: 18px;
  }
  body.woocommerce-order-received .woocommerce-order .woocommerce-order-overview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.woocommerce-order-received .woocommerce-order .ec-vorkasse__daten,
  body.woocommerce-order-received .woocommerce-order .woocommerce-bacs-bank-details ul.wc-bacs-bank-details,
  body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details .woocommerce-columns--addresses {
    grid-template-columns: 1fr;
  }
  body.woocommerce-order-received .woocommerce-order .woocommerce-order-overview,
  body.woocommerce-order-received .woocommerce-order .woocommerce-bacs-bank-details,
  body.woocommerce-order-received .woocommerce-order .ec-vorkasse,
  body.woocommerce-order-received .woocommerce-order .ec-weiter,
  body.woocommerce-order-received .woocommerce-order .woocommerce-order-details,
  body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details .woocommerce-column {
    padding: 20px;
  }
  body.woocommerce-order-received .woocommerce-order .woocommerce-thankyou-order-received {
    font-size: 18px;
  }
  body.woocommerce-order-received .woocommerce-order .ec-vorkasse__zeile--betrag dd {
    font-size: 28px;
  }
  body.woocommerce-order-received .woocommerce-order .ec-vorkasse__zeile--zweck dd {
    font-size: 18px;
  }
}

/* Kasse, Bezahlseite, Warenkorb (explorer/_kasse-zahlung.scss) */
body.woocommerce-checkout #payment {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  margin-top: 24px;
}
body.woocommerce-checkout #payment ul.wc_payment_methods,
body.woocommerce-checkout #payment ul.payment_methods {
  display: grid;
  gap: 12px;
  margin: 0 0 24px;
  padding: 0;
  border: 0;
  list-style: none;
}
body.woocommerce-checkout #payment li.wc_payment_method {
  margin: 0;
  padding: 24px 28px;
  background: #fff;
  border: 1px solid #e8e2da;
  border-radius: 12px;
  list-style: none;
  transition: border-color 0.15s, box-shadow 0.15s;
}
body.woocommerce-checkout #payment li.wc_payment_method:has(input:checked) {
  border-color: #8a5a34;
  box-shadow: 0 0 0 1px #8a5a34;
}
body.woocommerce-checkout #payment li.wc_payment_method > input.input-radio {
  float: left;
  width: 20px;
  height: 20px;
  margin: 2px 0 0;
  accent-color: #8a5a34;
  cursor: pointer;
}
body.woocommerce-checkout #payment li.wc_payment_method > label {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin: 0 0 0 32px;
  font: 700 17px/1.4 "Lato", Arial, sans-serif;
  color: #333447;
  cursor: pointer;
}
body.woocommerce-checkout #payment li.wc_payment_method > label img {
  width: auto;
  max-width: 140px;
  max-height: 28px;
  margin: 0;
  vertical-align: middle;
}
body.woocommerce-checkout #payment li.wc_payment_method div.payment_box {
  clear: both;
  margin: 16px 0 0;
  padding: 16px 18px;
  background: #f9f7f5;
  border-radius: 8px;
  color: #333447;
  font: 400 15px/1.6 "Lato", Arial, sans-serif;
}
body.woocommerce-checkout #payment li.wc_payment_method div.payment_box::before,
body.woocommerce-checkout #payment li.wc_payment_method div.payment_box::after {
  display: none;
}
body.woocommerce-checkout #payment li.wc_payment_method div.payment_box p:last-child {
  margin-bottom: 0;
}
body.woocommerce-checkout #payment .place-order,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  background: none;
  gap: 16px;
}
body.woocommerce-checkout #payment .place-order p.form-row.validate-required,
body.woocommerce-checkout #payment .place-order p.german-market-checkbox-p,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.form-row.validate-required,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.german-market-checkbox-p {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  font: 400 15px/1.55 "Lato", Arial, sans-serif;
  color: #333447;
}
body.woocommerce-checkout #payment .place-order p.form-row.validate-required label.checkbox,
body.woocommerce-checkout #payment .place-order p.form-row.validate-required label,
body.woocommerce-checkout #payment .place-order p.german-market-checkbox-p label.checkbox,
body.woocommerce-checkout #payment .place-order p.german-market-checkbox-p label,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.form-row.validate-required label.checkbox,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.form-row.validate-required label,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.german-market-checkbox-p label.checkbox,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.german-market-checkbox-p label {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  padding: 4px 0;
  text-transform: none;
  letter-spacing: 0;
  font: 400 15px/1.55 "Lato", Arial, sans-serif;
  color: #333447;
  cursor: pointer;
}
body.woocommerce-checkout #payment .place-order p.form-row.validate-required input[type="checkbox"],
body.woocommerce-checkout #payment .place-order p.form-row.validate-required input.input-checkbox,
body.woocommerce-checkout #payment .place-order p.german-market-checkbox-p input[type="checkbox"],
body.woocommerce-checkout #payment .place-order p.german-market-checkbox-p input.input-checkbox,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.form-row.validate-required input[type="checkbox"],
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.form-row.validate-required input.input-checkbox,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.german-market-checkbox-p input[type="checkbox"],
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.german-market-checkbox-p input.input-checkbox {
  flex: none;
  width: 22px;
  height: 22px;
  margin: 1px 0 0;
  accent-color: #8a5a34;
  cursor: pointer;
}
body.woocommerce-checkout #payment .place-order p.form-row.validate-required a,
body.woocommerce-checkout #payment .place-order p.german-market-checkbox-p a,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.form-row.validate-required a,
body.woocommerce-checkout #payment div.form-row:has(> #place_order) p.german-market-checkbox-p a {
  color: #8a5a34;
  text-decoration: underline;
}
body.woocommerce-order-pay #payment {
  margin-top: 24px;
}
@media (max-width: 720px) {
  body.woocommerce-checkout #payment li.wc_payment_method {
    padding: 20px;
  }
}
body.woocommerce-checkout #customer_details h3:not(#ship-to-different-address),
body.woocommerce-checkout #order_review_heading {
  margin: 32px 0 16px;
  font: 600 26px/1.25 "Vollkorn", Georgia, serif;
  letter-spacing: 0;
  text-transform: none;
  color: #333447;
}
body.woocommerce-checkout #customer_details .col-1 > .woocommerce-billing-fields > h3:first-child:not(#ship-to-different-address) {
  margin-top: 0;
}
body.woocommerce-cart .woocommerce-message:has(a.wc-forward) {
  display: none;
}
body .woocommerce-message a.button.wc-forward,
body .return-to-shop a.button {
  background: #8a5a34;
  border: 1.5px solid #8a5a34;
  border-radius: 6px;
  color: #fff !important;
  display: inline-block;
  width: auto;
  min-width: 0;
  padding: 14px 28px;
  margin: 8px 0 0;
  text-align: center;
}
body .return-to-shop {
  margin: 0;
}
body .woocommerce-message a.button.wc-forward:hover,
body .woocommerce-message a.button.wc-forward:focus-visible,
body .return-to-shop a.button:hover,
body .return-to-shop a.button:focus-visible {
  background: #333447 !important;
  border-color: #333447;
  color: #fff !important;
}

/* Entfernen-Knopf im Warenkorb (explorer/_cart.scss) */
body .woocommerce a.remove {
  position: relative;
  display: block;
  width: 32px;
  height: 32px;
  font-size: 0;
  line-height: 0;
  border-radius: 50%;
  color: var(--wc-red) !important;
  transition: background-color 0.15s, color 0.15s;
}
body .woocommerce a.remove::before,
body .woocommerce a.remove::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14px;
  height: 2px;
  margin: -1px 0 0 -7px;
  background: currentColor;
  border-radius: 1px;
}
body .woocommerce a.remove::before {
  transform: rotate(45deg);
}
body .woocommerce a.remove::after {
  transform: rotate(-45deg);
}
body .woocommerce a.remove:hover,
body .woocommerce a.remove:focus-visible {
  background: var(--wc-red);
  color: #fff !important;
}
body .woocommerce a.remove:focus-visible {
  outline: 2px solid #333447;
  outline-offset: 2px;
}

/* Frühstückskarte (explorer/_fruehstueck-karte.scss) */
.ec-karten-speisen {
  gap: 24px;
  margin-bottom: 48px;
}
.ec-karte-speisen {
  height: 100%;
  padding: 28px;
  border: 1px solid #e8e2da;
  border-radius: 12px;
  background: #fff;
  box-sizing: border-box;
}
.ec-karte-speisen h2.wp-block-heading {
  margin: 0 0 6px;
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 600;
  font-size: 26px;
  line-height: 1.2;
  color: #333447;
}
.ec-karte-speisen .ec-speisen__zeit {
  margin: 0 0 22px;
  font: 700 12px/1.3 "Lato Bold", "Lato", Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6b655e;
}
.ec-speisen {
  margin: 0;
}
.ec-speisen .ec-speisen__zeile + .ec-speisen__zeile {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #f0ebe4;
}
.ec-speisen__zeile {
  display: grid;
  grid-template-columns: auto 1fr auto;
  column-gap: 10px;
  align-items: baseline;
}
.ec-speisen__zeile > .wp-block-group__inner-container {
  display: contents;
}
.ec-speisen__zeile p {
  margin: 0;
}
.ec-speisen__zeile .ec-speisen__name {
  grid-column: 1;
  grid-row: 1;
  font: 700 17px/1.35 "Lato Bold", "Lato", Arial, sans-serif;
  color: #333447;
}
.ec-speisen__zeile::before {
  content: "";
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  height: 0;
  margin-bottom: 5px;
  border-bottom: 1px dotted #cfc6ba;
}
.ec-speisen__zeile .ec-speisen__preis {
  grid-column: 3;
  grid-row: 1;
  font: 700 17px/1.35 "Lato Bold", "Lato", Arial, sans-serif;
  font-variant-numeric: lining-nums;
  white-space: nowrap;
  color: #333447;
}
.ec-speisen__zeile .ec-speisen__text {
  grid-column: 1 / -1;
  margin-top: 4px;
  font: 400 15px/1.5 "Lato", Arial, sans-serif;
  color: #6b655e;
}
.ec-speisen__zeile .ec-speisen__zusatz {
  grid-column: 1 / -1;
  margin-top: 4px;
  font: 400 14px/1.4 "Lato", Arial, sans-serif;
  color: #8a5a34;
}
.ec-abschluss a:not(.wp-block-button__link),
.ec-abschluss a:not(.wp-block-button__link):visited {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ec-abschluss p {
  line-height: 1.7;
}
@media (max-width: 781px) {
  .ec-karte-speisen {
    padding: 22px 20px;
  }
}
.wp-block-image.ec-bild-breit img {
  aspect-ratio: 16 / 7;
  object-fit: cover;
}
@media (max-width: 720px) {
  .wp-block-image.ec-bild-breit img {
    aspect-ratio: 4 / 3;
  }
}
/* Ende Frühstückskarte */
