/* Granola Love – Zahlung & Versand (WPBakery) */
body.gl-zv-page { --gl-zv-ink: #2A1D14; --gl-zv-text: #4A3A2E; --gl-zv-muted: #5E4A3C; --gl-zv-line: #E0D4C4; --gl-zv-card: #FFFFFF; --gl-zv-border: #E6DCCE; --gl-zv-lila: #7B4A88; --gl-zv-lila-bg: #EDE3EF; --gl-zv-brown: #4A2C1A; --gl-zv-sticky: 104px; }
body.gl-zv-page.admin-bar { --gl-zv-sticky: 136px; }
body.gl-zv-page em, body.gl-zv-page i { font-style: normal; }
body.gl-zv-page #content-wrap { padding-top: 0; }

/* Zeilen-Container (Zeilen bekommen die Klassen gl-zv-hero, gl-zv-chips-row, gl-zv-sec) */
.vc_row.gl-zv-hero, .vc_row.gl-zv-chips-row, .vc_row.gl-zv-sec { max-width: 1400px; margin-left: auto !important; margin-right: auto !important; padding-left: 0 !important; padding-right: 0 !important; box-sizing: border-box; }
.gl-zv-page .vc_column_container > .vc_column-inner { padding-left: 0 !important; padding-right: 0 !important; padding-top: 0 !important; }
.gl-zv-page .wpb_content_element { margin-bottom: 0 !important; }

/* Hero */
.vc_row.gl-zv-hero { padding-top: 40px; padding-bottom: 24px; }
.gl-zv-hero h1 { margin: 0 0 16px !important; font-family: 'Cormorant Garamond', Georgia, serif !important; font-weight: 500 !important; font-size: 72px !important; line-height: 0.98 !important; color: var(--gl-zv-ink) !important; letter-spacing: 0 !important; text-transform: none !important; }
.gl-zv-hero h1 em { color: var(--gl-zv-lila); }
.gl-zv-hero p { margin: 0 !important; max-width: 640px; font-size: 19px; line-height: 1.65; font-weight: 300; color: var(--gl-zv-text); }

/* Sprung-Chips */
.vc_row.gl-zv-chips-row { padding-bottom: 16px; }
.gl-zv-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.gl-zv-chips a { display: inline-flex; align-items: center; height: 40px; padding: 0 16px; border: 1px solid #CDBBA5; border-radius: 999px; background: #FFFFFF; font-size: 14px; color: var(--gl-zv-brown) !important; text-decoration: none !important; transition: border-color .15s, color .15s; }
.gl-zv-chips a:hover { border-color: var(--gl-zv-lila); color: var(--gl-zv-lila) !important; }

/* Abschnitte: links Überschrift (sticky), rechts Inhalt */
.vc_row.gl-zv-sec { display: grid !important; grid-template-columns: 280px minmax(0, 1fr); gap: 40px; align-items: stretch; padding-top: 48px; padding-bottom: 48px; border-top: 1px solid var(--gl-zv-line); scroll-margin-top: calc(var(--gl-zv-sticky) + 8px); }
.vc_row.gl-zv-sec--first { border-top: 0; }
.vc_row.gl-zv-sec::before, .vc_row.gl-zv-sec::after { display: none !important; content: none !important; }
.vc_row.gl-zv-sec > .wpb_column { width: auto !important; float: none !important; min-width: 0; }
.vc_row.gl-zv-sec > .wpb_column > .vc_column-inner, .vc_row.gl-zv-sec > .wpb_column > .vc_column-inner > .wpb_wrapper { height: 100%; }
.vc_row.gl-zv-sec > .wpb_column:first-child .wpb_text_column { position: sticky; top: var(--gl-zv-sticky); }
.vc_row.gl-zv-sec:last-of-type { margin-bottom: 72px !important; }

.gl-zv-head { display: flex; align-items: center; gap: 14px; }
.gl-zv-head[class*="gl-zv-head--"]::before { content: ""; flex: 0 0 48px; width: 48px; height: 48px; border-radius: 14px; background-color: var(--gl-zv-lila-bg); background-repeat: no-repeat; background-position: center; background-size: 24px 24px; }
.gl-zv-head h2 { margin: 0 !important; font-family: 'Cormorant Garamond', Georgia, serif !important; font-weight: 500 !important; font-size: 34px !important; line-height: 1.05 !important; color: var(--gl-zv-ink) !important; letter-spacing: 0 !important; text-transform: none !important; }
.gl-zv-head--karte::before { background-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%237B4A88%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%225%22 width=%2218%22 height=%2214%22 rx=%222%22/%3E%3Cpath d=%22M3 10h18M7 15h4%22/%3E%3C/svg%3E'); }
.gl-zv-head--versand::before { background-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%237B4A88%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 6h11v10H3zM14 9h4l3 3v4h-7z%22/%3E%3Ccircle cx=%227%22 cy=%2217.5%22 r=%221.8%22/%3E%3Ccircle cx=%2217%22 cy=%2217.5%22 r=%221.8%22/%3E%3C/svg%3E'); }
.gl-zv-head--haus::before { background-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%237B4A88%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 11l8-6 8 6v8a1 1 0 0 1-1 1h-4v-6h-6v6H5a1 1 0 0 1-1-1z%22/%3E%3C/svg%3E'); }
.gl-zv-head--pin::before { background-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%237B4A88%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 21s-6-5.5-6-11a6 6 0 0 1 12 0c0 5.5-6 11-6 11z%22/%3E%3Ccircle cx=%2212%22 cy=%2210%22 r=%222.2%22/%3E%3C/svg%3E'); }
.gl-zv-head--storno::before { background-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%237B4A88%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229%22/%3E%3Cpath d=%22M9 9l6 6M15 9l-6 6%22/%3E%3C/svg%3E'); }
.gl-zv-head--retoure::before { background-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%237B4A88%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 8h11a5 5 0 0 1 0 10H9%22/%3E%3Cpath d=%22M8 4L4 8l4 4%22/%3E%3C/svg%3E'); }
.gl-zv-head--mail::before { background-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%237B4A88%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%225%22 width=%2218%22 height=%2214%22 rx=%222%22/%3E%3Cpath d=%22M3 7l9 6 9-6%22/%3E%3C/svg%3E'); }

/* Inhalt */
.gl-zv-body, .gl-zv-sec .wpb_text_column { font-size: 16px; line-height: 1.7; color: var(--gl-zv-text); }
.gl-zv-sec .wpb_column:last-child .wpb_wrapper > * + * { margin-top: 16px; }
.gl-zv-sec p { margin: 0 0 16px; }
.gl-zv-sec p:last-child { margin-bottom: 0; }
.gl-zv-sec strong { color: var(--gl-zv-ink); }
.gl-zv-sec a { color: var(--gl-zv-brown); }
.gl-zv-sec a:hover { color: var(--gl-zv-lila); }
.gl-zv-sec h3 { margin: 8px 0 12px !important; font-family: inherit !important; font-size: 17px !important; font-weight: 600 !important; line-height: 1.4 !important; color: var(--gl-zv-ink) !important; text-transform: none !important; letter-spacing: 0 !important; }
.gl-zv-sec ul { margin: 0; padding-left: 20px; font-size: 15px; line-height: 1.9; }
.gl-zv-small { font-size: 15px; }

body.gl-zv-page .gl-zv-sec p, body.gl-zv-page .gl-zv-sec li { color: var(--gl-zv-text); font-size: 16px; line-height: 1.7; }
body.gl-zv-page .gl-zv-sec .gl-zv-small, body.gl-zv-page .gl-zv-sec li, body.gl-zv-page .gl-zv-hinweis { font-size: 15px; }

/* Karten */
.gl-zv-cards { display: grid; gap: 14px; margin: 0 0 16px; }
.gl-zv-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gl-zv-cards--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gl-zv-card { display: flex; flex-direction: column; gap: 10px; padding: 22px; background: var(--gl-zv-card); border: 1px solid var(--gl-zv-border); border-radius: 24px; }
.gl-zv-card strong { font-size: 16px; }
.gl-zv-card span.gl-zv-card__text { font-size: 14px; line-height: 1.5; }
.gl-zv-badges { display: flex; gap: 4px; align-self: flex-start; }
.gl-zv-badge { display: inline-flex; align-items: center; height: 34px; padding: 0 12px; border-radius: 8px; background: #F4EFE7; font-weight: 700; font-size: 14px; color: var(--gl-zv-ink); }
.gl-zv-badge--visa { background: #1A1F71; color: #FFFFFF; padding: 0 10px; }
.gl-zv-badge--mc { padding: 0 10px; }
.gl-zv-badge--klarna { background: #FFB3C7; }
.gl-zv-badge--paypal { background: #FFC439; color: #142C8E; }

.gl-zv-hinweis { margin: 0; padding: 14px 18px; background: #FFFDF9; border: 1px solid var(--gl-zv-border); border-radius: 14px; font-size: 15px; }

/* Lieferzeit */
.gl-zv-time { display: flex; flex-direction: column; gap: 6px; padding: 22px; border-radius: 20px; }
.gl-zv-time--lager { background: #EEF4EA; }
.gl-zv-time--frisch { background: #EEDFD0; }
.gl-zv-time__label { font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.gl-zv-time--lager .gl-zv-time__label { color: #3F6630; }
.gl-zv-time--frisch .gl-zv-time__label { color: #7A4F2D; }
.gl-zv-time__value { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 40px; line-height: 1; color: var(--gl-zv-ink); }
.gl-zv-time__text { font-size: 14px; line-height: 1.5; }

/* Versandkosten */
.gl-zv-price { display: grid; grid-template-columns: 1fr auto; row-gap: 6px; align-items: baseline; padding: 22px; background: var(--gl-zv-card); border: 1px solid var(--gl-zv-border); border-radius: 24px; }
.gl-zv-price__land { font-weight: 600; color: var(--gl-zv-ink); }
.gl-zv-price__value { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 34px; line-height: 1; color: var(--gl-zv-ink); }
.gl-zv-price__free { grid-column: 1 / -1; font-size: 14px; font-weight: 600; color: #3F6630; }

/* Rücksendung: Ja/Nein */
.gl-zv-yesno { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 0 0 16px; }
.gl-zv-yesno > div { padding: 20px 22px; border-radius: 20px; font-size: 15px; line-height: 1.55; }
.gl-zv-yesno__ja { background: #EEF4EA; }
.gl-zv-yesno__nein { background: #F3E9E4; }
.gl-zv-yesno strong { display: block; margin-bottom: 6px; font-size: 16px; }

/* PLZ-Prüfer */
.gl-zv-plz { display: flex; flex-direction: column; gap: 14px; margin: 0 0 16px; padding: 26px; background: var(--gl-zv-brown); color: #F7F1E8; border-radius: 24px; }
.gl-zv-plz__label { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 28px; line-height: 1.1; color: #F7F1E8; }
.gl-zv-plz__input { width: 180px !important; height: 54px !important; padding: 0 22px !important; border: 0 !important; border-radius: 999px !important; background: #FFFFFF !important; font-family: inherit; font-size: 20px !important; letter-spacing: .1em; color: var(--gl-zv-ink) !important; box-shadow: none !important; }
.gl-zv-plz__input:focus { outline: none !important; box-shadow: 0 0 0 4px rgba(240, 201, 213, .45) !important; }
body.gl-zv-page .gl-zv-plz__yes, body.gl-zv-page .gl-zv-plz__no { margin: 0 !important; font-size: 16px; line-height: 1.5; color: #F7F1E8; }
body.gl-zv-page .gl-zv-plz__yes span { color: #F7F1E8; }
.gl-zv-plz__yes:not([hidden]) { display: flex; gap: 10px; align-items: center; }
.gl-zv-plz__yes strong { color: #FFFFFF; }
body.gl-zv-page .gl-zv-plz__no { color: #E2D6C8; }
.gl-zv-plz__no a { color: #F0C9D5 !important; }
.gl-zv-plz__check { flex: 0 0 28px; width: 28px; height: 28px; border-radius: 50%; background: #6FA35A; position: relative; }
.gl-zv-plz__check::after { content: ""; position: absolute; inset: 6px; background: #FFFFFF; -webkit-mask-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 12.5l4.5 4.5L19 7.5%22 stroke-width=%222.4%22/%3E%3C/svg%3E'); mask-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 12.5l4.5 4.5L19 7.5%22 stroke-width=%222.4%22/%3E%3C/svg%3E'); -webkit-mask-size: contain; mask-size: contain; }
.gl-zv-zones { padding: 18px 22px; background: var(--gl-zv-card); border: 1px solid var(--gl-zv-border); border-radius: 24px; }
.gl-zv-zones summary { display: flex; justify-content: space-between; align-items: center; min-height: 28px; font-weight: 600; color: var(--gl-zv-ink); cursor: pointer; list-style: none; }
.gl-zv-zones summary::-webkit-details-marker { display: none; }
.gl-zv-zones summary span::before { content: "+"; font-size: 20px; }
.gl-zv-zones[open] summary span::before { content: "–"; }
.gl-zv-zones__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 14px; }
.gl-zv-zones__item { padding: 14px 16px; background: #F7F1E8; border-radius: 14px; }
.gl-zv-zones__item strong { display: block; color: var(--gl-zv-ink); }
.gl-zv-zones__item span { display: block; margin-top: 4px; font-size: 13px; color: var(--gl-zv-muted); }

.gl-zv-adresse { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: var(--gl-zv-ink); }
.gl-zv-adresse::before { content: ""; width: 18px; height: 18px; background: var(--gl-zv-lila); -webkit-mask-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 21s-6-5.5-6-11a6 6 0 0 1 12 0c0 5.5-6 11-6 11z%22/%3E%3Ccircle cx=%2212%22 cy=%2210%22 r=%222.2%22/%3E%3C/svg%3E'); mask-image: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 21s-6-5.5-6-11a6 6 0 0 1 12 0c0 5.5-6 11-6 11z%22/%3E%3Ccircle cx=%2212%22 cy=%2210%22 r=%222.2%22/%3E%3C/svg%3E'); -webkit-mask-size: contain; mask-size: contain; }

/* Tablet / Mobil */
@media (max-width: 1100px) {
	.gl-zv-cards--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
	.vc_row.gl-zv-sec { grid-template-columns: minmax(0, 1fr); gap: 18px; padding-top: 36px; padding-bottom: 36px; }
	.vc_row.gl-zv-sec > .wpb_column:first-child .wpb_text_column { position: static; }
	.gl-zv-hero h1 { font-size: 48px !important; }
	.gl-zv-hero p { font-size: 17px; }
	.gl-zv-head h2 { font-size: 30px !important; }
	.gl-zv-chips { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; -webkit-overflow-scrolling: touch; }
	.gl-zv-chips a { flex: 0 0 auto; }
}
@media (max-width: 600px) {
	.gl-zv-cards--4, .gl-zv-cards--2, .gl-zv-yesno, .gl-zv-zones__grid { grid-template-columns: minmax(0, 1fr); }
	.gl-zv-time__value { font-size: 34px; }
}
