/* Loominda – Labelküche 0.3.2 */
.lk {
	--lk-primaer: #691511;
	--lk-primaer-dunkel: #4a0e0b;
	--lk-ueberschrift: #55110e;
	--lk-rose: #fbeff0;
	--lk-rose-kraeftig: #f4dfe0;
	--lk-text: #3a2a29;
	--lk-weiss: #ffffff;
	--lk-radius: 14px;
	color: var(--lk-text);
	font-family: inherit;
	line-height: 1.6;
	box-sizing: border-box;
}
.lk *, .lk *::before, .lk *::after { box-sizing: inherit; }
.lk p { margin: 0 0 1em; }

.lk .lk-h1, .lk .lk-h2, .lk .lk-h3 {
	color: var(--lk-ueberschrift);
	font-family: inherit;
	line-height: 1.2;
	margin: 0 0 .5em;
}
.lk .lk-h1 { font-size: clamp(1.9rem, 4vw, 2.8rem); }
.lk .lk-h2 { font-size: clamp(1.45rem, 3vw, 2rem); }
.lk .lk-h3 { font-size: 1.2rem; }

.lk .lk-eyebrow {
	color: var(--lk-primaer);
	font-size: .82rem;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	margin-bottom: .6em;
}
.lk .lk-mitte { text-align: center; }

/* Buttons */
.lk .lk-btn {
	display: inline-block;
	background: var(--lk-primaer);
	color: var(--lk-weiss);
	border: 2px solid var(--lk-primaer);
	border-radius: 999px;
	padding: .7em 1.6em;
	font-weight: 600;
	text-decoration: none;
	transition: background .2s, border-color .2s, color .2s, transform .2s;
}
.lk .lk-btn:hover, .lk .lk-btn:focus-visible {
	background: var(--lk-primaer-dunkel);
	border-color: var(--lk-primaer-dunkel);
	color: var(--lk-weiss);
	transform: translateY(-1px);
}
.lk .lk-btn-hell {
	background: transparent;
	color: var(--lk-primaer);
}
.lk .lk-btn-hell:hover, .lk .lk-btn-hell:focus-visible {
	background: var(--lk-primaer);
	color: var(--lk-weiss);
}
.lk .lk-aktionen { display: flex; flex-wrap: wrap; gap: .8em; margin-top: 1.4em; }
.lk .lk-mitte-flex { justify-content: center; }

/* Topf */
.lk .lk-topf { width: 100%; max-width: 240px; color: var(--lk-primaer); display: block; margin: 0 auto; }
.lk .lk-dampf path { animation: lk-dampf 3.2s ease-in-out infinite; }
.lk .lk-dampf path:nth-child(2) { animation-delay: .5s; }
.lk .lk-dampf path:nth-child(3) { animation-delay: 1s; }
@keyframes lk-dampf {
	0%, 100% { opacity: .25; transform: translateY(2px); }
	50% { opacity: 1; transform: translateY(-3px); }
}
@media (prefers-reduced-motion: reduce) {
	.lk .lk-dampf path { animation: none; opacity: .7; }
	.lk .lk-btn { transition: none; }
}

/* Hero */
.lk-seite .lk-hero {
	display: grid;
	grid-template-columns: 1.6fr 1fr;
	align-items: center;
	gap: 2rem;
	background: var(--lk-rose);
	border-radius: var(--lk-radius);
	padding: clamp(1.5rem, 4vw, 3rem);
	margin-bottom: 3rem;
}
.lk-seite .lk-intro { font-size: 1.08rem; }

/* So wird gekocht */
.lk-seite .lk-rezept { margin-bottom: 3.5rem; }
.lk-seite .lk-rezept > .lk-h2 { text-align: center; }
.lk-seite .lk-schritte {
	list-style: none;
	margin: 1.5rem 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
	counter-reset: none;
}
.lk-seite .lk-schritte li {
	text-align: center;
	padding: 0 .5rem;
	margin: 0;
}
.lk-seite .lk-nr {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.6rem;
	height: 2.6rem;
	border-radius: 50%;
	background: var(--lk-primaer);
	color: var(--lk-weiss);
	font-weight: 700;
	font-size: 1.15rem;
	margin-bottom: .7rem;
}

/* Speisekarte */
.lk-seite .lk-karte { margin-bottom: 3rem; }
.lk-seite .lk-karte-intro { max-width: 40em; margin-left: auto; margin-right: auto; }
.lk-seite .lk-gaenge {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
	gap: 1.5rem;
	margin-top: 2rem;
}
.lk-seite .lk-gang {
	background: var(--lk-weiss);
	border: 1px solid var(--lk-rose-kraeftig);
	border-top: 5px solid var(--lk-primaer);
	border-radius: var(--lk-radius);
	padding: 1.5rem;
	display: flex;
	flex-direction: column;
}
.lk-seite .lk-gang-kopf { display: flex; gap: .9rem; align-items: center; margin-bottom: .9rem; }
.lk-seite .lk-gang-kopf .lk-h3 { margin: 0; }
.lk-seite .lk-icon {
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	padding: 9px;
	background: var(--lk-rose);
	border-radius: 50%;
	fill: none;
	stroke: var(--lk-primaer);
	stroke-width: 2.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.lk-seite .lk-gang-name {
	color: var(--lk-primaer);
	font-size: .8rem;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	margin: 0 0 .15em;
}
.lk-seite .lk-zutaten {
	list-style: none;
	margin: 0 0 1.4rem;
	padding: 0;
	flex-grow: 1;
}
.lk-seite .lk-zutaten li {
	position: relative;
	padding: .35em 0 .35em 1.5em;
	border-bottom: 1px dotted var(--lk-rose-kraeftig);
	margin: 0;
}
.lk-seite .lk-zutaten li:last-child { border-bottom: 0; }
.lk-seite .lk-zutaten li::before {
	content: "";
	position: absolute;
	left: .2em;
	top: .95em;
	width: .5em;
	height: .5em;
	border-radius: 50%;
	background: var(--lk-primaer);
}
.lk-seite .lk-gang .lk-btn { align-self: flex-start; }
.lk-seite .lk-bald {
	align-self: flex-start;
	background: var(--lk-rose);
	color: var(--lk-primaer);
	border-radius: 999px;
	padding: .5em 1.2em;
	font-size: .9rem;
	font-weight: 600;
}

/* Rezeptbuch-Regal (Protokoll-Produkte) */
.lk-seite .lk-regal { margin-bottom: 3rem; scroll-margin-top: 90px; }
.lk-seite .lk-rezepte {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 1.4rem;
	margin-top: 2rem;
}
.lk-seite .lk-rezeptkarte {
	background: var(--lk-weiss);
	border: 1px solid var(--lk-rose-kraeftig);
	border-radius: var(--lk-radius);
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.lk-seite .lk-rezept-bild {
	display: block;
	background: var(--lk-rose);
	padding: 1.1rem 1.1rem 0;
	height: 190px;
	overflow: hidden;
}
.lk-seite .lk-rezept-bild img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 6px 6px 0 0;
	box-shadow: 0 2px 10px rgba(85, 17, 14, .12);
	transition: transform .3s;
}
.lk-seite .lk-rezeptkarte:hover .lk-rezept-bild img { transform: translateY(-4px); }
.lk-seite .lk-rezept-text { padding: 1.1rem 1.2rem 1.3rem; display: flex; flex-direction: column; flex-grow: 1; }
.lk-seite .lk-rezept-text .lk-h3 { margin-bottom: .2em; }
.lk-seite .lk-umfang { font-size: .9rem; opacity: .85; margin-bottom: .6em; }
.lk-seite .lk-preis { font-size: 1.15rem; font-weight: 700; color: var(--lk-ueberschrift); margin-bottom: .3em; }
.lk-seite .lk-bundle { font-size: .88rem; margin-bottom: 1em; }
.lk-seite .lk-bundle del { opacity: .65; }
.lk-seite .lk-rezept-text .lk-btn { align-self: flex-start; margin-top: auto; }
@media (prefers-reduced-motion: reduce) {
	.lk-seite .lk-rezept-bild img { transition: none; }
}

/* Geschichte, Starter-Menüs, Logo */
.lk-seite .lk-geschichte { margin-bottom: 3rem; }
.lk-seite .lk-menues { margin-bottom: 3rem; }
.lk-seite .lk-menue-liste {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 1.4rem;
	margin-top: 2rem;
}
.lk-seite .lk-menue {
	background: var(--lk-rose);
	border-radius: var(--lk-radius);
	padding: 1.4rem 1.5rem;
	display: flex;
	flex-direction: column;
}
.lk-seite .lk-menue .lk-h3 { margin-bottom: .1em; }
.lk-seite .lk-menue-fuer { font-size: .92rem; opacity: .85; }
.lk-seite .lk-menue .lk-zutaten li { border-bottom-color: var(--lk-rose-kraeftig); }
.lk-seite .lk-menue .lk-btn, .lk-seite .lk-menue .lk-bald { margin-top: auto; align-self: flex-start; }
.lk-seite .lk-menue .lk-bald { background: var(--lk-weiss); }
.lk-seite .lk-logo {
	border: 2px dashed var(--lk-rose-kraeftig);
	border-radius: var(--lk-radius);
	padding: clamp(1.3rem, 3vw, 2.2rem);
	margin-bottom: 2rem;
}
.lk-seite .lk-logo .lk-aktionen { margin-top: .4rem; }
.lk-seite .lk-rechtlich { margin-top: 1.5rem; margin-bottom: 0; }

/* Tipp, Hinweis, Schluss */
.lk-seite .lk-tipp {
	background: var(--lk-rose);
	border-left: 5px solid var(--lk-primaer);
	border-radius: 0 var(--lk-radius) var(--lk-radius) 0;
	padding: 1.3rem 1.6rem .4rem;
	margin: 0 0 1.5rem;
}
.lk-seite .lk-hinweis { font-size: .88rem; opacity: .85; text-align: center; margin-bottom: 3rem; }
.lk-seite .lk-schluss {
	text-align: center;
	background: var(--lk-rose-kraeftig);
	border-radius: var(--lk-radius);
	padding: clamp(1.5rem, 4vw, 2.8rem);
}

/* Teaser Homeseite */
.lk-teaser {
	display: grid;
	grid-template-columns: 180px 1fr;
	align-items: center;
	gap: 2rem;
	background: var(--lk-rose);
	border-radius: var(--lk-radius);
	padding: clamp(1.3rem, 3vw, 2.2rem);
	margin: 2rem 0;
}
.lk-teaser .lk-teaser-text p:last-of-type { margin-bottom: 1.2em; }
.lk-nur-button { margin: 1.5rem 0; }

/* Etikettenassistent mit Küchenhelfer (0.3.2) */
.lk-seite .lk-assistent { background: var(--lk-weiss); border: 2px solid var(--lk-rose-kraeftig); }
.lk-seite .lk-assistent .lk-zutaten { flex-grow: 0; }
.lk-seite .lk-assistent .lk-zutaten li { border-bottom-color: var(--lk-rose-kraeftig); }
.lk-seite .lk-assistent-bild { display: flex; flex-direction: column; align-items: center; justify-content: center; }
.lk .lk-koch { width: 100%; max-width: 300px; height: auto; display: block; overflow: visible; }
.lk-seite .lk-sprechblase {
	position: relative;
	margin: 0 0 .6rem;
	padding: .55rem .9rem;
	background: var(--lk-rose);
	color: var(--lk-ueberschrift);
	border-radius: 14px;
	font-weight: 600;
	font-size: .95rem;
	line-height: 1.3;
	text-align: center;
	max-width: 240px;
}
.lk-seite .lk-sprechblase::after {
	content: "";
	position: absolute;
	left: 62%;
	bottom: -9px;
	border: 10px solid transparent;
	border-top-color: var(--lk-rose);
	border-bottom: 0;
}
.lk .lk-aktionen button.lk-btn { font: inherit; font-weight: 600; cursor: pointer; }
.lk-seite .lk-erklaerung {
	margin-top: 1.2rem;
	padding: 1rem 1.2rem;
	background: var(--lk-rose);
	border-radius: var(--lk-radius);
}
.lk-seite .lk-erklaerung[hidden] { display: none; }
.lk-seite .lk-erklaerung-schritte { margin: 0 0 .6rem 1.2rem; padding: 0; }
.lk-seite .lk-erklaerung-schritte li { margin: 0 0 .5rem; }
.lk-seite .lk-erklaerung-schritte strong { color: var(--lk-ueberschrift); }
.lk-seite .lk-erklaerung-hinweis { margin: 0; font-size: .9rem; }

/* Küchenhelfer: Bewegung */
.lk .lk-koch .lk-koch-figur,
.lk .lk-koch .lk-koch-arm,
.lk .lk-koch .lk-koch-kelle,
.lk .lk-koch .lk-koch-augen,
.lk .lk-koch .lk-koch-muetze { transform-box: view-box; }
.lk .lk-koch .lk-koch-figur { animation: lk-koch-wippen 3.2s ease-in-out infinite; }
.lk .lk-koch .lk-koch-arm { transform-origin: 140px 166px; animation: lk-koch-winken 2.6s ease-in-out infinite; }
.lk .lk-koch .lk-koch-kelle { transform-origin: 40px 160px; animation: lk-koch-ruehren 2.2s ease-in-out infinite; }
.lk .lk-koch .lk-koch-augen { transform-origin: 100px 110px; animation: lk-koch-blinzeln 5s ease-in-out infinite; }
.lk .lk-koch .lk-koch-muetze { transform-origin: 100px 88px; animation: lk-koch-muetze 3.2s ease-in-out infinite; }
@keyframes lk-koch-wippen { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
@keyframes lk-koch-winken { 0%, 100% { transform: rotate(0deg); } 50% { transform: rotate(-9deg); } }
@keyframes lk-koch-ruehren { 0%, 100% { transform: rotate(-4deg); } 50% { transform: rotate(5deg); } }
@keyframes lk-koch-blinzeln { 0%, 92%, 100% { transform: scaleY(1); } 95% { transform: scaleY(.1); } }
@keyframes lk-koch-muetze { 0%, 100% { transform: rotate(0deg); } 50% { transform: rotate(3deg); } }
@media (prefers-reduced-motion: reduce) {
	.lk .lk-koch .lk-koch-figur,
	.lk .lk-koch .lk-koch-arm,
	.lk .lk-koch .lk-koch-kelle,
	.lk .lk-koch .lk-koch-augen,
	.lk .lk-koch .lk-koch-muetze { animation: none; }
}

/* 0.3.3: zwei Knöpfe im Gang, Benachrichtigung bei „Bald auf der Karte“ */
.lk-seite .lk-gang-knoepfe { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: auto; }
.lk-seite .lk-gang .lk-gang-knoepfe .lk-btn { align-self: auto; }
.lk-seite .lk-bald-block { margin-top: auto; }

/* Handy */
@media (max-width: 760px) {
	.lk-seite .lk-hero { grid-template-columns: 1fr; }
	.lk-seite .lk-hero-bild { order: -1; }
	.lk-seite .lk-hero-bild .lk-topf { max-width: 150px; }
	.lk-seite .lk-icon.lk-icon-gross { width: 110px; height: 110px; }
	.lk .lk-koch { max-width: 210px; }
	.lk-seite .lk-schritte { grid-template-columns: 1fr; }
	.lk-teaser { grid-template-columns: 1fr; text-align: center; }
	.lk-teaser .lk-topf { max-width: 120px; }
}


/* 0.4.5: Etikettenassistent „bald“: Hinweis über der Knopfzeile, „Sag mir Bescheid“ und „Wie funktioniert das?“ gleich groß */
.lk-seite .lk-bald-zeile { margin: 1.4em 0 0; }
.lk-seite .lk-bald-zeile .lk-bald {
	display: inline-flex;
	align-items: center;
	gap: .5em;
}
.lk-seite .lk-bald-zeile .lk-bald::before {
	content: "";
	width: .5em;
	height: .5em;
	border-radius: 50%;
	background: var(--lk-primaer);
}
.lk .lk-aktionen-bald { margin-top: .8em; align-items: flex-start; }
.lk .lk-aktionen-bald .lk-btn,
.lk .lk-aktionen-bald .loom-bescheid-thema__knopf {
	font-size: 1rem;
	line-height: 1.6;
	padding: .7em 1.6em;
	border: 2px solid var(--lk-primaer);
	border-radius: 999px;
	font-weight: 600;
	margin: 0;
}
.lk .lk-aktionen-bald .loom-bescheid-thema { position: relative; margin: 0; }
.lk .lk-aktionen-bald .loom-bescheid-thema__klappe { margin: 0; }
.lk .lk-aktionen-bald .loom-bescheid-thema__knopf {
	display: inline-block;
	list-style: none;
	cursor: pointer;
	background: var(--lk-primaer);
	color: var(--lk-weiss);
	transition: background .2s, border-color .2s, transform .2s;
}
.lk .lk-aktionen-bald .loom-bescheid-thema__knopf::-webkit-details-marker { display: none; }
.lk .lk-aktionen-bald .loom-bescheid-thema__knopf::marker { content: ""; }
.lk .lk-aktionen-bald .loom-bescheid-thema__knopf:hover,
.lk .lk-aktionen-bald .loom-bescheid-thema__knopf:focus-visible,
.lk .lk-aktionen-bald .loom-bescheid-thema__klappe[open] .loom-bescheid-thema__knopf {
	background: var(--lk-primaer-dunkel);
	border-color: var(--lk-primaer-dunkel);
	color: var(--lk-weiss);
}
/* Formular klappt als Feld unter dem Knopf auf, die Knopfzeile bleibt ruhig. */
.lk .lk-aktionen-bald .loom-bescheid-thema__formular {
	position: absolute;
	left: 0;
	top: calc(100% + .5rem);
	z-index: 20;
	width: min(24rem, 86vw);
	margin: 0;
	box-shadow: 0 8px 24px rgba(74, 14, 11, .14);
	border: 1px solid var(--lk-rose-kraeftig);
}
@media (max-width: 560px) {
	.lk .lk-aktionen-bald .loom-bescheid-thema__formular { position: static; width: 100%; margin-top: .5rem; }
}
