/* LD Core: contact buttons, price on request, inquiry button */
.ld-price-on-request { font-style: italic; }
.ld-price-from { font-size: .8em; opacity: .8; }
.ld-inquiry-button { display: inline-block; margin: 12px 0; padding: 12px 26px; border: 1px solid #C9A55C; color: #C9A55C; text-transform: uppercase; letter-spacing: .08em; font-size: 13px; text-decoration: none; }
.ld-inquiry-button:hover, .ld-inquiry-button.is-primary { background: #C9A55C; color: #0F0D0B; }

/* 0.2.0: product boxes (white cards on any background) */
.woocommerce ul.products li.product,
.elementor-widget-woocommerce-products ul.products li.product,
.elementor-widget-wc-archive-products ul.products li.product {
	background: #fff; padding: 14px 14px 22px !important; text-align: center;
	box-shadow: 0 12px 32px rgba(0,0,0,.28); border-radius: 2px; transition: transform .2s, box-shadow .2s;
}
.woocommerce ul.products li.product:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(0,0,0,.35); }
.woocommerce ul.products li.product img { margin-bottom: 14px !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: #1A1714 !important; font-family: "Cormorant Garamond", serif; font-size: 20px !important; font-weight: 600; }
.woocommerce ul.products li.product .price, .woocommerce ul.products li.product .price .amount { color: #8A6A2E !important; font-weight: 600; }
.woocommerce ul.products li.product .ld-price-on-request, .woocommerce ul.products li.product .ld-price-from { color: #8A6A2E !important; }
.woocommerce ul.products li.product .wc-gzd-additional-info, .woocommerce ul.products li.product .price-unit, .woocommerce ul.products li.product p { color: #6B6359 !important; font-size: 12px; }
.woocommerce ul.products li.product .wc-gzd-additional-info a { color: #6B6359 !important; text-decoration: underline; }
.woocommerce ul.products li.product .button { background: #C9A55C !important; color: #0F0D0B !important; border: 0 !important; }
.woocommerce ul.products li.product .button:hover { background: #1A1714 !important; color: #E2C887 !important; }

/* light sections */
.ld-light { color: #3B342C; }
.ld-light h1, .ld-light h2, .ld-light h3, .ld-light h4 { color: #1A1714; }

/* configurator form (CF7) */
.ld-form { display: grid; gap: 14px; }
.ld-form .ld-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; }
.ld-form label, .ld-form .ld-label { display: block; font-size: 13px; letter-spacing: .03em; color: #3B342C; }
.ld-form input[type=text], .ld-form input[type=email], .ld-form input[type=tel], .ld-form input[type=number], .ld-form select, .ld-form textarea {
	width: 100%; margin-top: 6px; padding: 11px 12px; background: #fff; border: 1px solid #D8CFC0; color: #1A1714; font-size: 15px; border-radius: 0;
}
.ld-form input:focus, .ld-form select:focus, .ld-form textarea:focus { outline: 0; border-color: #C9A55C; box-shadow: 0 0 0 2px rgba(201,165,92,.25); }
.ld-form .wpcf7-radio { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.ld-form .wpcf7-radio .wpcf7-list-item { margin: 0; }
.ld-form .wpcf7-radio label { display: inline-flex; align-items: center; gap: 6px; padding: 9px 14px; border: 1px solid #D8CFC0; background: #fff; cursor: pointer; color: #1A1714; }
.ld-form .wpcf7-radio input:checked + span { font-weight: 600; }
.ld-form .ld-accept { font-size: 12px; color: #6B6359; }
.ld-form .ld-accept a { color: #8A6A2E; }
.ld-form input[type=submit] { justify-self: start; padding: 14px 34px; background: #C9A55C; color: #0F0D0B; border: 0; text-transform: uppercase; letter-spacing: .1em; font-size: 13px; cursor: pointer; }
.ld-form input[type=submit]:hover { background: #1A1714; color: #E2C887; }
.wpcf7 form .wpcf7-response-output { margin: 14px 0 0; padding: 10px 14px; color: #1A1714; }

/* 0.2.1: win over kit/widget typography */
.woocommerce ul.products li.product .price, .woocommerce ul.products li.product .price * { font-family: "Jost", sans-serif !important; font-size: 18px !important; line-height: 1.4 !important; }
.woocommerce ul.products li.product .price .ld-price-from { font-size: 13px !important; }
.woocommerce ul.products li.product .ld-price-on-request { font-size: 17px !important; font-style: italic; }
.ld-form input[type=text], .ld-form input[type=email], .ld-form input[type=tel], .ld-form input[type=number], .ld-form select, .ld-form textarea {
	background: #fff !important; color: #1A1714 !important; border: 1px solid #D8CFC0 !important; border-radius: 0 !important; font-family: "Jost", sans-serif !important;
}
.ld-form input::placeholder, .ld-form textarea::placeholder { color: #9B9184 !important; }
.ld-form label, .ld-form .ld-label { color: #3B342C !important; font-family: "Jost", sans-serif !important; text-transform: none !important; }
.ld-form input[type=file] { margin-top: 6px; color: #3B342C; }

/* 0.2.2: compact product boxes on phones (2 columns) */
@media (max-width: 767px) {
	.woocommerce ul.products li.product { padding: 8px 8px 14px !important; }
	.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 16px !important; line-height: 1.2 !important; }
	.woocommerce ul.products li.product .price, .woocommerce ul.products li.product .price * { font-size: 15px !important; }
	.woocommerce ul.products li.product .wc-gzd-additional-info { font-size: 10px !important; margin: 2px 0 !important; }
	.woocommerce ul.products li.product .button { font-size: 11px !important; padding: 8px 10px !important; }
}

/* 0.4.0: 12px corner radius everywhere (photos, boxes, buttons, fields) */
:root { --ld-radius: 12px; }
.elementor-button, .elementor-widget-button .elementor-button, button, input[type=submit], input[type=button], .button, a.button,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .wc-block-components-button,
.ld-inquiry-button, .ld-steps .ld-next, .ld-steps input[type=submit] { border-radius: var(--ld-radius) !important; }
.elementor-widget-image img, .elementor-image img, .woocommerce ul.products li.product img, .woocommerce div.product div.images img,
.woocommerce-product-gallery__image, .woocommerce-product-gallery__image img, .flex-control-thumbs img { border-radius: var(--ld-radius) !important; }
.elementor-cta, .elementor-widget-call-to-action .elementor-cta { border-radius: var(--ld-radius); overflow: hidden; }
.woocommerce ul.products li.product { border-radius: var(--ld-radius) !important; overflow: hidden; }
input[type=text], input[type=email], input[type=tel], input[type=number], input[type=search], input[type=password], select, textarea,
.ld-form input, .ld-form select, .ld-form textarea, .ld-chips label, .ld-swatches label, .ld-form .wpcf7-radio label { border-radius: var(--ld-radius) !important; }
.ld-steps input[type=text], .ld-steps input[type=email], .ld-steps input[type=tel], .ld-steps input[type=number] { border-radius: 0 !important; }
.ld-steps textarea { border-radius: var(--ld-radius) !important; }
.e-con.ld-box, .ld-box { border-radius: var(--ld-radius); overflow: hidden; }

/* 0.4.1: product photo flush with the card (top, left, right) */
.woocommerce ul.products li.product { padding: 0 16px 22px !important; }
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail {
	display: block; width: calc(100% + 32px) !important; max-width: none !important; margin: 0 -16px 16px !important; border-radius: 0 !important;
}
@media (max-width: 767px) {
	.woocommerce ul.products li.product { padding: 0 10px 14px !important; }
	.woocommerce ul.products li.product a img,
	.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail { width: calc(100% + 20px) !important; margin: 0 -10px 12px !important; }
}
/* minimal cards (startseite-neu) keep their own layout */
.ld-cards ul.products li.product { padding: 0 !important; }
.ld-cards ul.products li.product a img { width: 100% !important; margin: 0 0 16px !important; border-radius: var(--ld-radius) !important; }

/* 0.4.2: no white hairline at the rounded top corners.
   The card itself is transparent; a white layer starts where the square photo ends
   (margin-top in % is relative to the card width = photo height). */
.woocommerce ul.products li.product { position: relative; background: transparent !important; isolation: isolate; }
.woocommerce ul.products li.product::before {
	content: ""; position: absolute; z-index: -1; left: 0; right: 0; top: 0; bottom: 0;
	margin-top: calc(100% - 2px); background: #fff; border-radius: 0 0 var(--ld-radius) var(--ld-radius);
}
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail { aspect-ratio: 1 / 1; object-fit: cover; height: auto !important; border-radius: var(--ld-radius) var(--ld-radius) 0 0 !important; }
.ld-cards ul.products li.product::before { display: none; }
.ld-cards ul.products li.product a img { border-radius: var(--ld-radius) !important; }

/* Trustindex badge in hero: left aligned with the text */
.ld-hero-badge .ti-widget-container, .ld-hero-badge .ti-widget { margin-left: 0 !important; margin-right: auto !important; justify-content: flex-start !important; }
.ld-hero-badge .ti-widget-container { display: inline-flex; width: auto !important; }
.ld-hero-badge .ti-widget { text-align: left !important; }

/* 0.5.0: Google rating badge (hero) */
.ld-gbadge {
	display: inline-flex; align-items: center; gap: 12px; padding: 10px 18px 10px 10px;
	background: rgba(255,255,255,.06); border: 1px solid rgba(243,235,221,.22); border-radius: var(--ld-radius);
	-webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
	color: #F3EBDD !important; text-decoration: none !important; font-family: "Jost", sans-serif; line-height: 1;
	transition: border-color .2s, background .2s;
}
.ld-gbadge:hover { border-color: #C9A55C; background: rgba(201,165,92,.10); }
.ld-gbadge-g { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 9px; background: #fff; flex: none; }
.ld-gbadge-g svg { width: 18px; height: 18px; }
.ld-gbadge-score { font-family: "Jost", sans-serif; font-size: 20px; font-weight: 600; color: #fff; letter-spacing: .02em; font-variant-numeric: lining-nums tabular-nums; }
.ld-gbadge-stars { display: inline-flex; gap: 2px; }
.ld-gbadge-stars svg { width: 15px; height: 15px; fill: #E2C887; display: block; }
.ld-gbadge-stars .is-off svg { fill: rgba(243,235,221,.25); }
.ld-gbadge-sep { width: 1px; height: 22px; background: rgba(243,235,221,.25); }
.ld-gbadge-count { font-size: 13px; letter-spacing: .04em; color: #E4DCCD; font-variant-numeric: lining-nums; }
@media (max-width: 767px) {
	.ld-gbadge { gap: 9px; padding: 8px 12px 8px 8px; }
	.ld-gbadge-g { width: 28px; height: 28px; }
	.ld-gbadge-stars svg { width: 12px; height: 12px; } .ld-gbadge-count { font-size: 12px; } .ld-gbadge-score { font-size: 17px; }
}

/* Trustindex review cards: 12px like the rest of the site */
.ld-reviews .ti-widget .ti-review-item > .ti-inner, .ld-reviews .ti-widget .ti-review-item .ti-inner { border-radius: var(--ld-radius) !important; }

/* photo with overlapping info card (homepage section 2) */
.ld-photo-wrap { position: relative; }
.ld-photo-wrap > .ld-photo-card { position: absolute !important; left: -28px; bottom: 36px; margin: 0 !important; z-index: 2; }
@media (max-width: 767px) {
	.ld-photo-wrap > .ld-photo-card { left: 12px; bottom: 12px; }
}

/* homepage: its own visit section replaces the footer CTA */
body.home .elementor-element-477f9c47 { display: none !important; }

/* photo as tall as the text column next to it */
@media (min-width: 768px) {
	.ld-photo-wrap { align-self: stretch; }
	.ld-photo-wrap > .ld-fill-img, .ld-photo-wrap > .ld-fill-img > .elementor-widget-container { height: 100%; flex: 1 1 auto; }
	.ld-photo-wrap .ld-fill-img img { height: 100% !important; width: 100% !important; object-fit: cover; }
}

/* 0.6.0: shop archive + single product in the homepage style */
.ld-light .woocommerce-result-count { color: #8B8378; font-family: "Jost", sans-serif; font-size: 13px; }
.ld-light .woocommerce-ordering select { background: #fff !important; color: #1A1714 !important; border: 1px solid #DDD4C6 !important; padding: 10px 14px; font-family: "Jost", sans-serif; }
.woocommerce nav.woocommerce-pagination ul { border: 0 !important; display: flex; gap: 8px; justify-content: center; }
.woocommerce nav.woocommerce-pagination ul li { border: 0 !important; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 42px; padding: 11px 14px !important; border: 1px solid #DDD4C6 !important; border-radius: var(--ld-radius); color: #1A1714 !important; font-family: "Jost", sans-serif; }
.woocommerce nav.woocommerce-pagination ul li span.current, .woocommerce nav.woocommerce-pagination ul li a:hover { background: #1A1714 !important; color: #F3EBDD !important; border-color: #1A1714 !important; }
.ld-chiprow .elementor-button { background: transparent !important; }
.ld-chiprow .elementor-button:hover { background: #1A1714 !important; color: #F3EBDD !important; }
/* spec table from the short description */
.ld-spec, .ld-spec p { color: #4A4239; font-family: "Jost", sans-serif; font-size: 15px; }
.ld-spec table { width: 100%; border-collapse: separate; border-spacing: 0; border: 1px solid #E9E2D6; border-radius: var(--ld-radius); overflow: hidden; margin: 6px 0 0; }
.ld-spec table td { padding: 11px 16px !important; border: 0 !important; border-bottom: 1px solid #F0EBE2 !important; background: #fff !important; color: #1A1714; font-size: 14px; }
.ld-spec table tr:last-child td { border-bottom: 0 !important; }
.ld-spec table td:first-child { width: 42%; color: #8B8378; background: #FBF9F5 !important; }
/* add to cart */
.ld-atc form.cart, .ld-atc .variations_form { margin: 4px 0 0 !important; }
.ld-atc table.variations { border: 0 !important; margin-bottom: 12px !important; }
.ld-atc table.variations th, .ld-atc table.variations td { background: transparent !important; border: 0 !important; padding: 4px 0 !important; color: #1A1714; font-family: "Jost", sans-serif; }
.ld-atc table.variations th label { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #8B8378; }
.ld-atc table.variations select { width: 100%; padding: 12px 14px !important; background: #fff !important; color: #1A1714 !important; border: 1px solid #DDD4C6 !important; font-size: 15px; }
.ld-atc .reset_variations { color: #8A6A2E !important; font-size: 13px; }
.ld-atc .single_variation .price, .ld-atc .woocommerce-variation-price .price { color: #8A6A2E !important; font: 600 22px "Jost", sans-serif; }
.ld-atc .quantity input.qty { width: 74px; height: 50px; padding: 0 !important; background: #fff !important; color: #1A1714 !important; border: 1px solid #DDD4C6 !important; text-align: center; font-size: 16px; }
.ld-atc .single_add_to_cart_button { height: 50px; padding: 0 30px !important; background: #C9A55C !important; color: #0F0D0B !important; border: 0 !important; font: 500 13px "Jost", sans-serif !important; letter-spacing: .12em; text-transform: uppercase; }
.ld-atc .single_add_to_cart_button:hover { background: #1A1714 !important; color: #E2C887 !important; }
.ld-atc .stock { color: #2F7D4F !important; font-family: "Jost", sans-serif; font-size: 13px; }
.ld-atc .ld-inquiry-button { display: inline-flex; align-items: center; height: 50px; margin: 12px 0 0; padding: 0 26px; border-radius: var(--ld-radius); }
.ld-light .wc-gzd-additional-info, .ld-light .delivery-time-info, .ld-light .shipping-costs-info, .ld-light .tax-info { color: #6B6359 !important; font-family: "Jost", sans-serif; font-size: 13px; margin: 0 !important; }
.ld-light .wc-gzd-additional-info a { color: #6B6359 !important; text-decoration: underline; }
.ld-meta .product_meta { font-family: "Jost", sans-serif; font-size: 13px; color: #8B8378; display: grid; gap: 4px; }
.ld-meta .product_meta a { color: #8A6A2E !important; }
.ld-product-gallery .woocommerce-product-gallery__trigger { border-radius: var(--ld-radius) !important; background: #fff !important; }
.ld-product-gallery .flex-control-thumbs { display: grid !important; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-top: 10px !important; }
.ld-product-gallery .flex-control-thumbs li { width: auto !important; margin: 0 !important; }
/* tabs */
.ld-tabs .woocommerce-tabs ul.tabs { display: flex; gap: 8px; padding: 0 !important; margin: 0 0 22px !important; border: 0 !important; }
.ld-tabs .woocommerce-tabs ul.tabs::before, .ld-tabs .woocommerce-tabs ul.tabs li::before, .ld-tabs .woocommerce-tabs ul.tabs li::after { display: none !important; }
.ld-tabs .woocommerce-tabs ul.tabs li { margin: 0 !important; padding: 0 !important; border: 1px solid #DDD4C6 !important; border-radius: var(--ld-radius) !important; background: #fff !important; }
.ld-tabs .woocommerce-tabs ul.tabs li a { padding: 12px 20px !important; color: #1A1714 !important; font: 500 12px "Jost", sans-serif !important; letter-spacing: .14em; text-transform: uppercase; }
.ld-tabs .woocommerce-tabs ul.tabs li.active { background: #1A1714 !important; border-color: #1A1714 !important; }
.ld-tabs .woocommerce-tabs ul.tabs li.active a { color: #F3EBDD !important; }
.ld-tabs .woocommerce-Tabs-panel { color: #4A4239; font-family: "Jost", sans-serif; font-size: 16px; line-height: 1.75; }
.ld-tabs .woocommerce-Tabs-panel h2 { font-family: "Cormorant Garamond", serif; color: #1A1714; font-size: 30px; }
.ld-tabs table.shop_attributes, .ld-tabs table.shop_attributes th, .ld-tabs table.shop_attributes td { border-color: #EEE8DE !important; background: #fff !important; color: #1A1714; }
.woocommerce .woocommerce-breadcrumb a { color: #8A6A2E !important; }

/* shop filters (classic WooCommerce widgets in the archive sidebar) */
.ld-filters { position: sticky; top: 24px; }
.ld-filter h5, .ld-filter .widgettitle, .ld-filter h2 { margin: 0 0 12px !important; font: 500 12px "Jost", sans-serif !important; letter-spacing: .16em; text-transform: uppercase; color: #8B8378 !important; }
.ld-filter ul { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 6px; }
.ld-filter ul li { margin: 0 !important; padding: 0 !important; font: 400 15px "Jost", sans-serif; color: #1A1714; }
.ld-filter ul li a { color: #1A1714 !important; text-decoration: none; }
.ld-filter ul li a:hover, .ld-filter ul li.chosen a, .ld-filter ul li.current-cat > a { color: #8A6A2E !important; }
.ld-filter .count { color: #A39A8D; font-size: 12px; margin-left: 4px; }
.ld-filter ul.children { margin: 6px 0 0 12px !important; }
.ld-filter .woocommerce-widget-layered-nav-list__item a::before { content: ""; display: inline-block; width: 15px; height: 15px; margin-right: 9px; vertical-align: -2px; border: 1px solid #CFC6B8; border-radius: 4px; background: #fff; }
.ld-filter .woocommerce-widget-layered-nav-list__item--chosen a::before { background: #1A1714; border-color: #1A1714; box-shadow: inset 0 0 0 3px #fff; }
.ld-filter .widget_layered_nav_filters ul { display: flex; flex-wrap: wrap; gap: 6px; }
.ld-filter .widget_layered_nav_filters ul li a { display: inline-block; padding: 6px 12px; background: #1A1714; color: #F3EBDD !important; border-radius: var(--ld-radius); font-size: 13px; }
.ld-filter .widget_layered_nav_filters ul li a::before { color: #E2C887 !important; }
.ld-filter .price_slider_wrapper .ui-slider { height: 3px; margin: 14px 6px 18px; background: #E5DDD0; border: 0; border-radius: 3px; }
.ld-filter .price_slider_wrapper .ui-slider-range { background: #C9A55C; }
.ld-filter .price_slider_wrapper .ui-slider-handle { top: -7px; width: 16px; height: 16px; border-radius: 50%; background: #1A1714; border: 2px solid #fff; box-shadow: 0 1px 4px rgba(0,0,0,.3); cursor: pointer; }
.ld-filter .price_slider_amount { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; font: 400 13px "Jost", sans-serif; color: #4A4239; }
.ld-filter .price_slider_amount .button { padding: 9px 16px !important; background: #1A1714 !important; color: #F3EBDD !important; font-size: 12px !important; letter-spacing: .1em; text-transform: uppercase; }
.ld-filter-note a { color: #8A6A2E !important; }
@media (max-width: 767px) { .ld-filters { position: static; } }
.woocommerce .ld-filter .widget_price_filter .ui-slider .ui-slider-range, .ld-filter .ui-slider .ui-slider-range { background-color: #C9A55C !important; }
.woocommerce .ld-filter .widget_price_filter .ui-slider .ui-slider-handle, .ld-filter .ui-slider .ui-slider-handle { background-color: #1A1714 !important; border: 2px solid #fff !important; }
.woocommerce .ld-filter .widget_price_filter .price_slider_wrapper .ui-widget-content, .ld-filter .ui-widget-content { background-color: #E5DDD0 !important; }
.ld-gzd .elementor-shortcode, .ld-gzd p, .ld-gzd .wc-gzd-additional-info { margin: 0 !important; color: #6B6359 !important; font: 400 13px/1.5 "Jost", sans-serif !important; }
.ld-gzd a { color: #6B6359 !important; text-decoration: underline; }
.ld-light .ld-inquiry-button { border-color: #1A1714; color: #1A1714; }
.ld-light .ld-inquiry-button:hover, .ld-light .ld-inquiry-button.is-primary { background: #1A1714; color: #F3EBDD; border-color: #1A1714; }

/* 0.7.0: subpages (legal/blog prose, galleries, post cards, FAQ) */
.ld-prose { color: #3B342C; font: 300 17px/1.8 "Jost", sans-serif; }
.ld-prose h1, .ld-prose h2, .ld-prose h3, .ld-prose h4 { font-family: "Cormorant Garamond", serif; color: #1A1714; line-height: 1.2; margin: 1.6em 0 .5em; }
.ld-prose h2 { font-size: 32px; } .ld-prose h3 { font-size: 25px; } .ld-prose h4 { font-size: 20px; }
.ld-prose p, .ld-prose ul, .ld-prose ol { margin: 0 0 1em; }
.ld-prose a { color: #8A6A2E; text-decoration: underline; text-underline-offset: 3px; }
.ld-prose strong { font-weight: 600; color: #1A1714; }
.ld-prose img { border-radius: var(--ld-radius); height: auto; max-width: 100%; }
.ld-prose table { width: 100%; border-collapse: collapse; margin: 1em 0; }
.ld-prose table td, .ld-prose table th { border: 1px solid #EEE8DE; padding: 10px 12px; }
.ld-prose blockquote { border-left: 3px solid #C9A55C; margin: 1.2em 0; padding: .2em 0 .2em 1em; color: #4A4239; font-style: italic; }
.ld-postinfo .elementor-icon-list-text { font: 400 13px "Jost", sans-serif; color: #8B8378; }
.ld-gallery .gallery-item img { border-radius: var(--ld-radius) !important; aspect-ratio: 4 / 3; object-fit: cover; width: 100%; height: auto; transition: opacity .25s; }
.ld-gallery .gallery-item a:hover img { opacity: .85; }
.ld-postcards .elementor-post__card { border-radius: var(--ld-radius) !important; border: 1px solid #EEE8DE; box-shadow: 0 14px 36px -18px rgba(0,0,0,.25) !important; }
.ld-postcards .elementor-post__excerpt p { font: 300 15px/1.65 "Jost", sans-serif; color: #4A4239; }
.ld-postcards .elementor-post__meta-data { font: 400 12px "Jost", sans-serif; color: #8B8378; border-color: #EEE8DE !important; }
.ld-postcards .elementor-post__read-more { font: 500 12px "Jost", sans-serif !important; letter-spacing: .12em; text-transform: uppercase; color: #8A6A2E !important; }
.ld-faq .elementor-accordion-item { border: 1px solid #EEE8DE !important; border-radius: var(--ld-radius); margin-bottom: 10px; overflow: hidden; background: #fff; }
.ld-faq .elementor-tab-title { padding: 20px 24px !important; }
.ld-faq .elementor-tab-content { padding: 0 24px 22px !important; border-top: 0 !important; }
.ld-contact-form .ld-row { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }

/* category cards on the homepage: readable text over photos */
.ld-cat-card .elementor-cta__title, .ld-cat-card .elementor-cta__description { text-shadow: 0 2px 14px rgba(0,0,0,.55); }
.ld-cat-card .elementor-cta__content { background: linear-gradient(180deg, rgba(11,10,9,0) 0%, rgba(11,10,9,.55) 100%); }
.ld-postcards .elementor-post__excerpt p { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.ld-prose, .ld-prose p, .ld-prose li, .ld-prose td, .ld-prose span, .ld-prose div { color: #3B342C !important; }
.ld-prose h1, .ld-prose h2, .ld-prose h3, .ld-prose h4, .ld-prose strong, .ld-prose b { color: #1A1714 !important; }
.ld-prose a { color: #8A6A2E !important; }

/* text column next to an icon / number: take the remaining width, never overflow */
.e-con.ld-grow { flex: 1 1 0% !important; width: auto !important; min-width: 0 !important; max-width: 100% !important; }

/* press page: images uncropped in a masonry-like grid */
.ld-press-grid { display: block !important; column-count: 3; column-gap: 24px; }
.ld-press-grid > .elementor-element { break-inside: avoid; margin: 0 0 24px !important; width: 100% !important; display: block; }
.ld-press-tile figure, .ld-press-tile .wp-caption { margin: 0; padding: 12px 12px 14px; background: #fff; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); box-shadow: 0 14px 36px -20px rgba(0,0,0,.25); }
.ld-press-tile img { width: 100% !important; height: auto !important; object-fit: contain !important; display: block; }
.ld-press-tile figcaption, .ld-press-tile .widget-image-caption { margin-top: 10px; font: 500 12px "Jost", sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #8A6A2E; text-align: left; }
@media (max-width: 1024px) { .ld-press-grid { column-count: 2; } }
@media (max-width: 600px) { .ld-press-grid { column-count: 1; } }
.ld-press-tile figcaption, .ld-press-tile .widget-image-caption, .ld-press-tile .wp-caption-text { color: #8A6A2E !important; opacity: 1 !important; font: 500 12px "Jost", sans-serif !important; letter-spacing: .14em !important; }

/* press cards: covers + brand links */
.ld-press-cover img { width: 100% !important; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 0 !important; display: block; transition: opacity .25s; }
.ld-press-cover a:hover img { opacity: .9; }
.ld-brandlink .elementor-button { border-radius: 0 !important; }
.ld-brand-yt .elementor-button-icon svg, .ld-brand-yt .elementor-button-icon i { fill: #FF0000 !important; color: #FF0000 !important; font-size: 20px; width: 20px; height: 20px; }
.ld-brand-sc .elementor-button-icon svg, .ld-brand-sc .elementor-button-icon i { fill: #FF5500 !important; color: #FF5500 !important; font-size: 20px; width: 22px; height: 20px; }

/* optional hint in form labels */
.ld-opt { margin-left: 6px; font-size: 11px; letter-spacing: .06em; color: #A39A8D; text-transform: none; }
.ld-steps .ld-chips-small { display: grid; gap: 8px; }
@media (min-width: 768px) { .ld-photo-wrap .ld-fill-img a { display: block; height: 100%; } }

/* 0.9.0: cart / checkout / account, white and calm */
body.ld-checkout-flow, body.ld-checkout-flow.elementor-kit-9 { background: #fff !important; background-image: none !important; }
.ld-checkout-flow .ld-flow-wrap { color: #3B342C; font-family: "Jost", sans-serif; }
.ld-flow-steps { display: flex; gap: 0; list-style: none; margin: 0 auto !important; padding: 0 !important; max-width: 560px; counter-reset: none; }
.ld-flow-steps li { flex: 1; position: relative; text-align: center; font: 500 12px "Jost", sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #A39A8D; }
.ld-flow-steps li::after { content: ""; position: absolute; top: 15px; left: calc(50% + 22px); right: calc(-50% + 22px); height: 1px; background: #E2DBCF; }
.ld-flow-steps li:last-child::after { display: none; }
.ld-flow-steps li a { color: inherit; text-decoration: none; }
.ld-flow-num { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; margin: 0 auto 8px; border: 1px solid #D8CFC0; border-radius: 50%; font-size: 13px; letter-spacing: 0; background: #fff; }
.ld-flow-steps li.is-current { color: #1A1714; }
.ld-flow-steps li.is-current .ld-flow-num { background: #1A1714; border-color: #1A1714; color: #fff; }
.ld-flow-steps li.is-done { color: #8A6A2E; }
.ld-flow-steps li.is-done .ld-flow-num { background: #C9A55C; border-color: #C9A55C; color: #0F0D0B; }
.ld-flow-steps li.is-done::after { background: #C9A55C; }
/* shared */
.ld-checkout-flow .woocommerce, .ld-checkout-flow .woocommerce p, .ld-checkout-flow .woocommerce td, .ld-checkout-flow .woocommerce th, .ld-checkout-flow .woocommerce label, .ld-checkout-flow .woocommerce li { color: #3B342C; font-family: "Jost", sans-serif; }
.ld-checkout-flow .woocommerce h2, .ld-checkout-flow .woocommerce h3 { font-family: "Cormorant Garamond", serif !important; color: #1A1714 !important; font-weight: 600; font-size: 26px; margin: 0 0 16px; }
.ld-checkout-flow .woocommerce a:not(.button) { color: #8A6A2E; }
.ld-checkout-flow .woocommerce input.input-text, .ld-checkout-flow .woocommerce textarea, .ld-checkout-flow .woocommerce select, .ld-checkout-flow .select2-container .select2-selection--single {
	background: #fff !important; color: #1A1714 !important; border: 1px solid #DDD4C6 !important; border-radius: var(--ld-radius) !important; padding: 12px 14px !important; font: 400 16px "Jost", sans-serif !important; min-height: 48px; box-shadow: none !important;
}
.ld-checkout-flow .select2-container .select2-selection--single .select2-selection__rendered { line-height: 22px !important; padding: 0 !important; color: #1A1714 !important; }
.ld-checkout-flow .select2-container .select2-selection--single .select2-selection__arrow { top: 11px !important; right: 10px !important; }
.ld-checkout-flow .woocommerce input.input-text:focus, .ld-checkout-flow .woocommerce textarea:focus { border-color: #C9A55C !important; box-shadow: 0 0 0 3px rgba(201,165,92,.18) !important; outline: 0; }
.ld-checkout-flow .woocommerce form .form-row label { font-size: 13px; color: #6B6359; margin-bottom: 4px; }
.ld-checkout-flow .woocommerce .button, .ld-checkout-flow .woocommerce button.button, .ld-checkout-flow .woocommerce a.button, .ld-checkout-flow .woocommerce #place_order {
	background: #1A1714 !important; color: #F3EBDD !important; border: 0 !important; border-radius: var(--ld-radius) !important; padding: 15px 26px !important; font: 500 13px "Jost", sans-serif !important; letter-spacing: .1em; text-transform: uppercase; line-height: 1.2;
}
.ld-checkout-flow .woocommerce .button:hover, .ld-checkout-flow .woocommerce #place_order:hover { background: #8A6A2E !important; color: #fff !important; }
.ld-checkout-flow .woocommerce a.checkout-button, .ld-checkout-flow .woocommerce .wc-proceed-to-checkout a, .ld-checkout-flow .woocommerce .checkout-button, .ld-checkout-flow .woocommerce #place_order { background: #C9A55C !important; color: #0F0D0B !important; width: 100%; padding: 18px 26px !important; font-size: 14px !important; }
.ld-checkout-flow .woocommerce .checkout-button:hover, .ld-checkout-flow .woocommerce #place_order:hover { background: #1A1714 !important; color: #E2C887 !important; }
.ld-checkout-flow .woocommerce-message, .ld-checkout-flow .woocommerce-info, .ld-checkout-flow .woocommerce-error { background: #FBF9F5 !important; border: 1px solid #EEE8DE !important; border-left: 3px solid #C9A55C !important; border-radius: var(--ld-radius); color: #3B342C !important; padding: 14px 18px 14px 48px !important; }
.ld-checkout-flow .woocommerce-error { border-left-color: #B4442E !important; }
.ld-checkout-flow .woocommerce-message::before, .ld-checkout-flow .woocommerce-info::before { color: #C9A55C !important; }
/* cart table */
.ld-checkout-flow table.shop_table { border: 1px solid #EEE8DE !important; border-radius: var(--ld-radius) !important; border-collapse: separate !important; overflow: hidden; background: #fff; }
.ld-checkout-flow table.shop_table th { background: #FBF9F5; font: 500 12px "Jost", sans-serif !important; letter-spacing: .12em; text-transform: uppercase; color: #8B8378 !important; padding: 14px 16px !important; border: 0 !important; }
.ld-checkout-flow table.shop_table td { padding: 16px !important; border-top: 1px solid #F0EBE2 !important; vertical-align: middle; }
.ld-checkout-flow table.cart img { width: 84px !important; border-radius: var(--ld-radius) !important; }
.ld-checkout-flow table.cart td.product-name a { color: #1A1714 !important; font: 600 18px "Cormorant Garamond", serif; }
.ld-checkout-flow table.cart .product-remove a.remove { color: #A39A8D !important; border: 1px solid #E2DBCF; border-radius: 50%; }
.ld-checkout-flow table.cart .product-remove a.remove:hover { background: #B4442E !important; color: #fff !important; border-color: #B4442E; }
.ld-checkout-flow .quantity input.qty { width: 70px; height: 44px; border: 1px solid #DDD4C6 !important; border-radius: var(--ld-radius) !important; background: #fff !important; color: #1A1714 !important; text-align: center; }
.ld-checkout-flow table.cart td.actions .coupon .input-text { width: 180px !important; }
.ld-checkout-flow .cart-collaterals .cart_totals { width: 100% !important; max-width: 440px; float: right; background: #FBF9F5; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); padding: 24px; }
.ld-checkout-flow .cart_totals table.shop_table { border: 0 !important; background: transparent; }
.ld-checkout-flow .cart_totals table.shop_table th { background: transparent; }
.ld-checkout-flow .order-total .amount, .ld-checkout-flow .cart_totals .order-total td { color: #1A1714; font-weight: 600; font-size: 18px; }
.ld-checkout-flow .wc-empty-cart-message, .ld-checkout-flow .cart-empty { text-align: center; }
.ld-checkout-flow .return-to-shop { text-align: center; }
/* checkout: one calm column (Germanized puts payment, legal checkbox, summary and button in this order) */
.ld-checkout-flow form.checkout { display: block; max-width: 780px; margin: 0 auto; }
.ld-checkout-flow form.checkout #customer_details .col-1, .ld-checkout-flow form.checkout #customer_details .col-2 { width: 100% !important; float: none !important; }
.ld-checkout-flow form.checkout #order_review_heading { margin-top: 34px; }
.ld-checkout-flow form.checkout #order_review { background: #FBF9F5; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); padding: 26px; }
.ld-checkout-flow .woocommerce-billing-fields__field-wrapper, .ld-checkout-flow .woocommerce-shipping-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 0 18px; }
.ld-checkout-flow .woocommerce-billing-fields__field-wrapper .form-row, .ld-checkout-flow .woocommerce-shipping-fields__field-wrapper .form-row { width: 100% !important; float: none !important; margin: 0 0 14px !important; }
.ld-checkout-flow .woocommerce-billing-fields__field-wrapper .form-row-wide, .ld-checkout-flow .woocommerce-shipping-fields__field-wrapper .form-row-wide { grid-column: 1 / -1; }
.ld-checkout-flow .woocommerce form .form-row label, .ld-checkout-flow .woocommerce .woocommerce-form__label, .ld-checkout-flow .wc-gzd-checkbox-placeholder label, .ld-checkout-flow #ship-to-different-address label { text-transform: none !important; letter-spacing: 0 !important; font-size: 14px !important; }
.ld-checkout-flow table.shop_table td, .ld-checkout-flow table.shop_table tfoot th, .ld-checkout-flow table.shop_table tbody th { background: #fff !important; }
.ld-checkout-flow .cart_totals table.shop_table td, .ld-checkout-flow .cart_totals table.shop_table th { background: transparent !important; }
@media (max-width: 700px) { .ld-checkout-flow .woocommerce-billing-fields__field-wrapper, .ld-checkout-flow .woocommerce-shipping-fields__field-wrapper { grid-template-columns: 1fr; } }
.ld-checkout-flow #order_review table.shop_table { background: #fff; }
.ld-checkout-flow #payment { background: transparent !important; border-radius: var(--ld-radius); }
.ld-checkout-flow #payment ul.payment_methods { border: 1px solid #EEE8DE !important; border-radius: var(--ld-radius); background: #fff; padding: 6px 16px !important; }
.ld-checkout-flow #payment ul.payment_methods li { padding: 12px 0 !important; border-bottom: 1px solid #F0EBE2; }
.ld-checkout-flow #payment ul.payment_methods li:last-child { border-bottom: 0; }
.ld-checkout-flow #payment div.payment_box { background: #FBF9F5 !important; color: #4A4239 !important; border-radius: var(--ld-radius); font-size: 14px; }
.ld-checkout-flow #payment div.payment_box::before { border-bottom-color: #FBF9F5 !important; }
.ld-checkout-flow .wc-gzd-checkbox-placeholder, .ld-checkout-flow .legal, .ld-checkout-flow .woocommerce-terms-and-conditions-wrapper { font-size: 13px; color: #4A4239; }
.ld-checkout-flow .ld-flow-trust { display: flex; flex-wrap: wrap; gap: 10px 26px; justify-content: center; font: 400 13px "Jost", sans-serif; color: #6B6359; }
@media (max-width: 900px) {
	.ld-checkout-flow .cart-collaterals .cart_totals { float: none; max-width: none; }
	.ld-flow-label { font-size: 10px; }
}
.ld-checkout-flow #order_review table.shop_table th, .ld-checkout-flow #order_review table.shop_table td, .ld-checkout-flow .woocommerce-order table.shop_table th, .ld-checkout-flow .woocommerce-order table.shop_table td { background: #fff !important; }
.ld-checkout-flow .ld-flow-trust i { margin-right: 6px; }
.ld-flow-title { margin: 0 0 6px; font: 500 36px/1.15 "Cormorant Garamond", serif; color: #1A1714; }
@media (max-width: 767px) { .ld-flow-title { font-size: 28px; } }

/* my account */
.ld-checkout-flow .woocommerce-account .woocommerce, .woocommerce-account.ld-checkout-flow .woocommerce { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 36px; align-items: start; }
.ld-checkout-flow .woocommerce-MyAccount-navigation { width: auto !important; float: none !important; }
.ld-checkout-flow .woocommerce-MyAccount-content { width: auto !important; float: none !important; }
.ld-checkout-flow .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0 !important; padding: 8px !important; background: #FBF9F5; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); }
.ld-checkout-flow .woocommerce-MyAccount-navigation li { margin: 0 !important; }
.ld-checkout-flow .woocommerce-MyAccount-navigation li a { display: block; padding: 11px 14px; border-radius: 8px; color: #1A1714 !important; text-decoration: none; font: 400 15px "Jost", sans-serif; }
.ld-checkout-flow .woocommerce-MyAccount-navigation li a:hover { background: #fff; }
.ld-checkout-flow .woocommerce-MyAccount-navigation li.is-active a { background: #1A1714; color: #F3EBDD !important; }
.ld-checkout-flow .woocommerce-MyAccount-navigation-link--customer-logout a { color: #8A6A2E !important; }
@media (max-width: 767px) { .woocommerce-account.ld-checkout-flow .woocommerce { grid-template-columns: 1fr; } }
.woocommerce-account.ld-checkout-flow .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-account.ld-checkout-flow .woocommerce > .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-account.ld-checkout-flow .woocommerce-MyAccount-navigation { grid-column: 1; }
.woocommerce-account.ld-checkout-flow .woocommerce-MyAccount-content { grid-column: 2; }
@media (max-width: 767px) { .woocommerce-account.ld-checkout-flow .woocommerce-MyAccount-content { grid-column: 1; } }
/* 1.5.0: account overview, login/register */
.ld-account-overview { display: grid; gap: 28px; }
.ld-checkout-flow .woocommerce h2.ld-account-hello { margin: 0; font-size: 32px; }
.ld-account-section-head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 12px; }
.ld-checkout-flow .woocommerce .ld-account-section-head h3, .ld-checkout-flow .woocommerce .ld-account-help h3 { margin: 0; font-size: 22px; }
.ld-account-section-head a { font-size: 14px; text-decoration: none; }
.ld-account-orders { list-style: none; margin: 0 !important; padding: 0 !important; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); overflow: hidden; }
.ld-account-orders li { margin: 0 !important; border-top: 1px solid #F0EBE2; }
.ld-account-orders li:first-child { border-top: 0; }
.ld-checkout-flow .woocommerce .ld-account-orders a { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 16px; align-items: center; padding: 16px 18px; color: #1A1714; text-decoration: none; }
.ld-account-orders a:hover { background: #FBF9F5; }
.ld-order-main strong { display: block; font-weight: 500; }
.ld-order-meta { display: block; margin-top: 2px; font-size: 14px; color: #6B6359; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ld-order-status { padding: 4px 10px; border-radius: 999px; background: #F3EFE8; color: #4A4239; font-size: 13px; white-space: nowrap; }
.ld-order-status.is-processing, .ld-order-status.is-on-hold { background: #F6EBD3; color: #7A5A1E; }
.ld-order-status.is-completed { background: #E6F0E3; color: #3C6233; }
.ld-order-status.is-cancelled, .ld-order-status.is-refunded, .ld-order-status.is-failed { background: #F4E4E0; color: #8C3524; }
.ld-order-total { font-weight: 500; white-space: nowrap; }
.ld-account-empty { margin: 0; padding: 18px; border: 1px dashed #DDD4C6; border-radius: var(--ld-radius); }
.ld-account-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.ld-checkout-flow .woocommerce a.ld-account-tile { display: block; padding: 18px; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); background: #FBF9F5; color: #1A1714; text-decoration: none; transition: border-color .2s, background .2s; }
.ld-checkout-flow .woocommerce a.ld-account-tile:hover { border-color: #C9A55C; background: #fff; }
.ld-account-tile strong { display: block; margin-bottom: 4px; font-weight: 500; }
.ld-account-tile span { font-size: 14px; color: #6B6359; }
.ld-account-help { padding: 20px 22px; border-left: 3px solid #C9A55C; background: #FBF9F5; border-radius: var(--ld-radius); }
.ld-checkout-flow .woocommerce .ld-account-help p { margin: 6px 0 0; }
.ld-account-help-links { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.ld-account-help-links a { font-weight: 500; text-decoration: none; }
@media (max-width: 900px) { .ld-account-tiles { grid-template-columns: 1fr; } }
@media (max-width: 560px) {
	.ld-checkout-flow .woocommerce .ld-account-orders a { grid-template-columns: minmax(0, 1fr) auto; }
	.ld-order-status { grid-column: 1; justify-self: start; }
	.ld-order-total { grid-column: 2; grid-row: 1; }
}
/* logged out: login and register side by side instead of the menu grid */
body.woocommerce-account:not(.logged-in).ld-checkout-flow .woocommerce { display: block; }
.ld-checkout-flow #customer_login { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.ld-checkout-flow #customer_login::before, .ld-checkout-flow #customer_login::after { display: none; }
.ld-checkout-flow #customer_login > .u-column1, .ld-checkout-flow #customer_login > .u-column2 { width: auto !important; float: none !important; padding: 26px; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); background: #FBF9F5; }
.ld-checkout-flow .woocommerce form.login, .ld-checkout-flow .woocommerce form.register { margin: 0 !important; padding: 0 !important; border: 0 !important; }
.ld-checkout-flow .woocommerce .ld-account-intro { margin: 0 0 14px; color: #4A4239; }
.ld-account-benefits { margin: 0 0 18px !important; padding: 0 !important; list-style: none; }
.ld-checkout-flow .woocommerce .ld-account-benefits li { position: relative; padding-left: 24px; margin: 0 0 6px; }
.ld-account-benefits li::before { content: "✓"; position: absolute; left: 0; color: #C9A55C; font-weight: 600; }
@media (max-width: 767px) { .ld-checkout-flow #customer_login { grid-template-columns: 1fr; } }

/* 1.5.0: search without results */
.ld-no-results { max-width: 760px; margin: 0 0 40px; color: #3B342C !important; font-family: "Jost", sans-serif; opacity: 1 !important; }
.ld-no-results h2 { margin: 0 0 22px !important; font: 500 30px/1.2 "Cormorant Garamond", serif !important; color: #1A1714 !important; }
.ld-no-results h3 { margin: 0 0 10px !important; font: 600 20px "Cormorant Garamond", serif !important; color: #1A1714 !important; }
.ld-no-results-block { padding: 20px 0; border-top: 1px solid #EEE8DE; }
.ld-no-results-pages, .ld-no-results-tips { margin: 0; padding: 0 0 0 18px; }
.ld-no-results-pages { list-style: none; padding: 0; }
.ld-no-results-pages li { margin: 0 0 6px; }
.ld-no-results a { color: #8A6A2E !important; text-decoration: none; }
.ld-no-results-cats { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.ld-no-results .ld-no-results-cats a { padding: 7px 14px; border: 1px solid #DDD4C6; border-radius: var(--ld-radius); color: #1A1714 !important; font-size: 14px; }
.ld-no-results-cats a:hover { border-color: #C9A55C; }


/* 1.0.0: blog cards without the jumpy hover, clean date; breadcrumbs */
.ld-postcards .elementor-post__thumbnail { padding-bottom: 0 !important; }
.ld-postcards .elementor-post__thumbnail img { position: static !important; transform: none !important; width: 100% !important; height: auto !important; aspect-ratio: 16 / 10; object-fit: cover; transition: opacity .25s; }
.ld-postcards .elementor-post__card:hover .elementor-post__thumbnail img { opacity: .9; }
.ld-postcards .elementor-post__meta-data { padding: 12px 24px 18px !important; border-top: 1px solid #F0EBE2 !important; margin: 0 !important; font: 400 12px "Jost", sans-serif !important; letter-spacing: .06em; color: #8B8378 !important; }
.ld-postcards .elementor-post__meta-data .elementor-post-date { color: #8B8378 !important; }
.ld-breadcrumb, .ld-breadcrumb a, .ld-breadcrumb span { font: 400 13px "Jost", sans-serif; letter-spacing: .02em; }
.ld-breadcrumb { color: #CBC2B3; }
.ld-breadcrumb a { color: #E2C887 !important; text-decoration: none; }
.ld-breadcrumb a:hover { text-decoration: underline; }
.ld-breadcrumb .breadcrumb_last { color: #F3EBDD; }
.ld-light .ld-breadcrumb, .ld-breadcrumb.is-dark { color: #8B8378; }
.ld-light .ld-breadcrumb a, .ld-breadcrumb.is-dark a { color: #8A6A2E !important; }
.ld-light .ld-breadcrumb .breadcrumb_last, .ld-breadcrumb.is-dark .breadcrumb_last { color: #1A1714; }
.ld-postmeta-row { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; }

/* mini cart (header off-canvas) */
.elementor-menu-cart__footer-buttons { gap: 10px !important; }
.elementor-menu-cart__footer-buttons .elementor-button {
	font: 500 13px/1.2 "Jost", sans-serif !important; letter-spacing: .12em !important; text-transform: uppercase !important;
	padding: 15px 18px !important; min-height: 0 !important; height: auto !important; border-radius: var(--ld-radius) !important; text-align: center;
}
.elementor-menu-cart__footer-buttons .elementor-button .elementor-button-text { font: inherit !important; letter-spacing: inherit !important; }
.elementor-menu-cart__footer-buttons .elementor-button--view-cart { background: transparent !important; color: #F3EBDD !important; border: 1px solid rgba(243,235,221,.45) !important; }
.elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover { border-color: #E2C887 !important; color: #E2C887 !important; }
.elementor-menu-cart__footer-buttons .elementor-button--checkout { background: #C9A55C !important; color: #0F0D0B !important; border: 0 !important; }
.elementor-menu-cart__footer-buttons .elementor-button--checkout:hover { background: #E2C887 !important; }
.elementor-menu-cart__subtotal { font: 500 15px "Jost", sans-serif !important; }
.elementor-menu-cart__product-name a { font-family: "Cormorant Garamond", serif; font-size: 17px; }

/* ===== 1.1.0: cart + checkout redesign ===== */
/* cart: items as cards left, sticky overview right */
body.woocommerce-cart .ld-flow-wrap .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 36px; align-items: start; }
body.woocommerce-cart .ld-flow-wrap .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
body.woocommerce-cart .ld-flow-wrap .woocommerce > .woocommerce-notices-wrapper:empty { display: none; }
body.woocommerce-cart .ld-flow-wrap .wc-empty-cart-message, body.woocommerce-cart .ld-flow-wrap .return-to-shop, body.woocommerce-cart .ld-flow-wrap .cart-empty { grid-column: 1 / -1; }
body.woocommerce-cart .cart-collaterals { position: sticky; top: 24px; width: auto !important; }
body.woocommerce-cart .cart-collaterals .cart_totals { float: none !important; width: 100% !important; max-width: none; margin: 0; padding: 26px; background: #FBF9F5; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); }
.ld-checkout-flow table.shop_table.cart { border: 0 !important; background: transparent !important; border-radius: 0 !important; overflow: visible; }
.ld-checkout-flow table.shop_table.cart thead { display: none; }
.ld-checkout-flow table.shop_table.cart tbody { display: block; }
.ld-checkout-flow table.shop_table.cart tr.cart_item { display: grid; grid-template-columns: 104px minmax(0, 1fr) 96px 110px 34px; grid-template-areas: "thumb name qty sub remove"; align-items: center; gap: 18px; padding: 16px 18px; margin: 0 0 14px; background: #fff; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); box-shadow: 0 10px 28px -22px rgba(0,0,0,.35); }
.ld-checkout-flow table.shop_table.cart tr.cart_item td { display: block !important; padding: 0 !important; border: 0 !important; background: transparent !important; text-align: left !important; }
.ld-checkout-flow table.shop_table.cart tr.cart_item td::before { display: none !important; }
.ld-checkout-flow table.shop_table.cart td.product-thumbnail { grid-area: thumb; }
.ld-checkout-flow table.shop_table.cart td.product-thumbnail img { width: 104px !important; height: 104px; object-fit: cover; border-radius: 10px !important; }
.ld-checkout-flow table.shop_table.cart td.product-name { grid-area: name; }
.ld-checkout-flow table.shop_table.cart td.product-name a { font: 600 21px/1.2 "Cormorant Garamond", serif !important; color: #1A1714 !important; text-decoration: none; }
.ld-checkout-flow table.shop_table.cart td.product-name .wc-gzd-cart-info, .ld-checkout-flow table.shop_table.cart td.product-name dl { margin: 6px 0 0 !important; font-size: 13px; color: #6B6359; }
.ld-checkout-flow table.shop_table.cart td.product-price { display: none !important; }
.ld-checkout-flow table.shop_table.cart td.product-quantity { grid-area: qty; }
.ld-checkout-flow table.shop_table.cart td.product-subtotal { grid-area: sub; text-align: right !important; font: 600 17px "Jost", sans-serif; color: #1A1714; }
.ld-checkout-flow table.shop_table.cart td.product-remove { grid-area: remove; text-align: right !important; }
.ld-checkout-flow table.shop_table.cart td.product-remove a.remove { width: 30px; height: 30px; line-height: 28px; font-size: 20px; }
.ld-checkout-flow table.shop_table.cart tr:not(.cart_item) { display: block; }
.ld-checkout-flow table.shop_table.cart td.actions { display: flex !important; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; padding: 4px 0 0 !important; border: 0 !important; background: transparent !important; }
.ld-checkout-flow table.shop_table.cart td.actions .coupon { display: flex; gap: 8px; float: none !important; }
.ld-checkout-flow table.shop_table.cart td.actions .coupon .input-text { width: 190px !important; min-height: 44px; }
.ld-checkout-flow table.shop_table.cart td.actions .coupon .button, .ld-checkout-flow table.shop_table.cart td.actions > .button { padding: 12px 18px !important; font-size: 12px !important; }
.ld-checkout-flow table.shop_table.cart td.actions > .button { background: transparent !important; color: #1A1714 !important; border: 1px solid #CFC6B8 !important; float: none !important; }
.ld-checkout-flow table.shop_table.cart td.actions > .button:disabled { opacity: .45; }
/* overview card */
.ld-checkout-flow .cart_totals h2 { font-size: 26px !important; margin-bottom: 12px !important; }
.ld-checkout-flow .cart_totals table.shop_table, .ld-checkout-flow .cart_totals table.shop_table tr, .ld-checkout-flow .cart_totals table.shop_table th, .ld-checkout-flow .cart_totals table.shop_table td { display: block; width: auto !important; border: 0 !important; background: transparent !important; padding: 0 !important; text-align: left !important; }
.ld-checkout-flow .cart_totals table.shop_table tr { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0 !important; border-top: 1px solid #EEE8DE !important; }
.ld-checkout-flow .cart_totals table.shop_table tr:first-child { border-top: 0 !important; }
.ld-checkout-flow .cart_totals table.shop_table th { font: 400 14px "Jost", sans-serif !important; letter-spacing: 0 !important; text-transform: none !important; color: #6B6359 !important; }
.ld-checkout-flow .cart_totals table.shop_table td { text-align: right !important; font-size: 14px; color: #1A1714; }
.ld-checkout-flow .cart_totals table.shop_table td::before { display: none !important; }
.ld-checkout-flow .cart_totals tr.woocommerce-shipping-totals { flex-wrap: wrap; }
.ld-checkout-flow .cart_totals #shipping_method { margin: 0 !important; padding: 0 !important; list-style: none; }
.ld-checkout-flow .cart_totals .woocommerce-shipping-destination, .ld-checkout-flow .cart_totals .shipping-calculator-button { font-size: 12px; color: #8B8378; }
.ld-checkout-flow .cart_totals tr.order-total th, .ld-checkout-flow .cart_totals tr.order-total td, .ld-checkout-flow .cart_totals tr.order-total .amount { font: 600 20px "Jost", sans-serif !important; color: #1A1714 !important; }
.ld-checkout-flow .cart_totals .order-total-differential-taxation-notice { display: block !important; border: 0 !important; }
.ld-checkout-flow .cart_totals .order-total-differential-taxation-notice td { text-align: left !important; font-size: 12px; color: #6B6359; }
.ld-checkout-flow .wc-proceed-to-checkout { padding: 16px 0 0 !important; display: grid; gap: 12px; }
.ld-checkout-flow .wc-proceed-to-checkout a.checkout-button { margin: 0 !important; display: block; text-align: center; }
.ld-continue { display: block; text-align: center; font: 500 12px "Jost", sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #6B6359 !important; text-decoration: none; }
.ld-continue:hover { color: #8A6A2E !important; }
.ld-trust-box { margin-top: 16px; padding: 16px 18px; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); background: #fff; display: grid; gap: 10px; }
.ld-trust-row { display: grid; grid-template-columns: 18px 1fr; gap: 10px; align-items: start; font: 400 13px/1.5 "Jost", sans-serif; color: #4A4239; }
.ld-trust-row i, .ld-trust-row .ld-ti { color: #C9A55C; margin-top: 3px; }
.ld-trust-row .ld-ti { width: 15px; height: 15px; fill: #C9A55C; }
.ld-trust-row strong { color: #1A1714; font-weight: 600; }
.ld-trust-row a { color: #8A6A2E !important; }
/* checkout: numbered section cards left, sticky summary right */
.ld-checkout-flow form.checkout { max-width: none !important; margin: 0 !important; counter-reset: ldsec; }
.ld-checkout-flow form.checkout #customer_details, .ld-checkout-flow form.checkout #payment, .ld-checkout-flow form.checkout #order_review { background: #fff !important; border: 1px solid #EEE8DE !important; border-radius: var(--ld-radius) !important; padding: 26px 28px !important; margin: 0 0 18px !important; box-shadow: 0 12px 30px -24px rgba(0,0,0,.35); }
.ld-checkout-flow form.checkout .woocommerce-billing-fields > h3, .ld-checkout-flow form.checkout #order_payment_heading, .ld-checkout-flow form.checkout #order_review_heading { display: flex; align-items: center; gap: 12px; font-size: 24px !important; margin: 0 0 18px !important; }
.ld-checkout-flow form.checkout #order_payment_heading, .ld-checkout-flow form.checkout #order_review_heading { margin: 26px 0 12px !important; }
.ld-checkout-flow form.checkout .woocommerce-billing-fields > h3::before, .ld-checkout-flow form.checkout #order_payment_heading::before, .ld-checkout-flow form.checkout #order_review_heading::before {
	counter-increment: ldsec; content: counter(ldsec); display: inline-flex; align-items: center; justify-content: center; flex: none; width: 32px; height: 32px; border-radius: 50%; background: #1A1714; color: #F3EBDD; font: 500 14px "Jost", sans-serif;
}
.ld-checkout-flow form.checkout #ship-to-different-address { font-size: 15px !important; margin: 8px 0 12px !important; }
.ld-checkout-flow form.checkout #payment ul.payment_methods { border: 0 !important; padding: 0 !important; background: transparent; }
.ld-checkout-flow form.checkout #payment ul.payment_methods li { padding: 14px 16px !important; margin: 0 0 10px; border: 1px solid #EEE8DE !important; border-radius: var(--ld-radius); }
.ld-checkout-flow form.checkout #payment ul.payment_methods li label { font: 500 15px "Jost", sans-serif !important; color: #1A1714; text-transform: none !important; letter-spacing: 0 !important; }
.ld-checkout-flow form.checkout #order_review table.shop_table { border-radius: var(--ld-radius) !important; }
.ld-checkout-flow form.checkout .wc-gzd-checkbox-placeholder { padding: 14px 16px; background: #FBF9F5; border-radius: var(--ld-radius); margin: 0 0 16px !important; }
.ld-checkout-side { position: sticky; top: 24px; }
.ld-order-summary { padding: 24px; background: #FBF9F5; border: 1px solid #EEE8DE; border-radius: var(--ld-radius); }
.ld-sum-title { margin: 0 0 14px !important; font: 600 24px "Cormorant Garamond", serif !important; color: #1A1714; }
.ld-sum-items { list-style: none; margin: 0 0 12px !important; padding: 0 !important; display: grid; gap: 12px; }
.ld-sum-items li { display: grid; grid-template-columns: 58px minmax(0, 1fr) auto; gap: 12px; align-items: center; }
.ld-sum-thumb { position: relative; }
.ld-sum-thumb img { width: 58px !important; height: 58px !important; object-fit: cover; border-radius: 8px !important; display: block; }
.ld-sum-thumb em { position: absolute; top: -7px; right: -7px; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 10px; background: #1A1714; color: #fff; font: normal 500 11px/20px "Jost", sans-serif; text-align: center; }
.ld-sum-name { font: 500 14px/1.35 "Jost", sans-serif; color: #1A1714; }
.ld-sum-price { font: 500 14px "Jost", sans-serif; color: #1A1714; }
.ld-sum-lines { border-top: 1px solid #EEE8DE; padding-top: 10px; display: grid; gap: 8px; }
.ld-sum-lines > div { display: flex; justify-content: space-between; font: 400 14px "Jost", sans-serif; color: #4A4239; }
.ld-sum-lines .ld-sum-total { padding-top: 10px; border-top: 1px solid #EEE8DE; font: 600 19px "Jost", sans-serif; color: #1A1714; }
.ld-sum-note { margin: 10px 0 0 !important; font: 400 12px "Jost", sans-serif; color: #6B6359; }
body.woocommerce-order-received .ld-checkout-side { display: none !important; }
body.woocommerce-order-received .ld-checkout-main { width: 100% !important; }
@media (max-width: 1024px) {
	body.woocommerce-cart .ld-flow-wrap .woocommerce { grid-template-columns: 1fr; }
	body.woocommerce-cart .cart-collaterals, .ld-checkout-side { position: static; }
}
@media (max-width: 767px) {
	.ld-checkout-flow table.shop_table.cart tr.cart_item { grid-template-columns: 76px minmax(0, 1fr) 30px; grid-template-areas: "thumb name remove" "thumb qty sub"; gap: 10px 14px; padding: 14px; }
	.ld-checkout-flow table.shop_table.cart td.product-thumbnail img { width: 76px !important; height: 76px; }
	.ld-checkout-flow table.shop_table.cart td.product-name a { font-size: 18px !important; }
	.ld-checkout-flow form.checkout #customer_details, .ld-checkout-flow form.checkout #payment, .ld-checkout-flow form.checkout #order_review { padding: 20px 16px !important; }
}
.ld-checkout-flow table.shop_table.cart tr.cart_item td.product-price { display: none !important; }
.ld-checkout-flow .woocommerce .wc-proceed-to-checkout a.ld-continue, .ld-checkout-flow .wc-proceed-to-checkout .ld-continue { background: transparent !important; color: #6B6359 !important; padding: 6px 0 0 !important; width: auto !important; font: 500 12px "Jost", sans-serif !important; letter-spacing: .12em; text-transform: uppercase; box-shadow: none !important; border: 0 !important; }
.ld-checkout-flow .woocommerce .wc-proceed-to-checkout a.ld-continue:hover { color: #8A6A2E !important; }
.ld-checkout-flow .cart_totals table.shop_table td, .ld-checkout-flow .cart_totals #shipping_method li, .ld-checkout-flow .cart_totals #shipping_method label { text-transform: none !important; letter-spacing: 0 !important; font: 400 14px "Jost", sans-serif !important; color: #1A1714; }
.ld-checkout-flow .cart_totals tr.order-total td, .ld-checkout-flow .cart_totals tr.order-total td .amount { font: 600 20px "Jost", sans-serif !important; }
/* checkout fixes */
.ld-checkout-flow .ld-flow-title, .ld-checkout-flow h1.ld-flow-title { color: #1A1714 !important; }
.ld-checkout-flow .ld-sum-title { color: #1A1714 !important; }
.ld-checkout-flow form.checkout #order_review_heading { display: none !important; }
.ld-checkout-flow form.checkout #payment { border: 0 !important; box-shadow: none !important; padding: 0 !important; margin: 0 0 6px !important; background: transparent !important; }
.ld-checkout-flow form.checkout #order_payment_heading { margin: 0 0 16px !important; }
.ld-checkout-flow form.checkout .wc-gzd-checkbox-placeholder-legal { position: relative; margin-top: 54px !important; }
.ld-checkout-flow form.checkout .wc-gzd-checkbox-placeholder-legal::before {
	content: "3"; position: absolute; top: -50px; left: 0; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; background: #1A1714; color: #F3EBDD; font: 500 14px "Jost", sans-serif;
}
.ld-checkout-flow form.checkout .wc-gzd-checkbox-placeholder-legal::after {
	content: "Prüfen & kaufen"; position: absolute; top: -48px; left: 44px; font: 600 24px/1.2 "Cormorant Garamond", serif; color: #1A1714;
}
.ld-checkout-flow form.checkout #order_review table.shop_table td, .ld-checkout-flow form.checkout #order_review table.shop_table th, .ld-checkout-flow form.checkout #order_review #shipping_method label { text-transform: none !important; letter-spacing: 0 !important; font-family: "Jost", sans-serif !important; }
.ld-checkout-flow form.checkout #order_review table.shop_table tfoot th { font: 400 14px "Jost", sans-serif !important; color: #6B6359 !important; }
.ld-checkout-flow form.checkout #order_review table.shop_table tr.order-total td, .ld-checkout-flow form.checkout #order_review table.shop_table tr.order-total th { font: 600 18px "Jost", sans-serif !important; color: #1A1714 !important; }
.ld-checkout-flow form.checkout #order_review table.shop_table { border: 1px solid #EEE8DE !important; }
.ld-checkout-flow form.checkout #order_review table.shop_table td, .ld-checkout-flow form.checkout #order_review table.shop_table th { border: 0 !important; border-top: 1px solid #F0EBE2 !important; }
.ld-checkout-flow form.checkout #order_review table.shop_table thead th { border-top: 0 !important; }
.ld-checkout-flow form.checkout #order_review table.shop_table td:last-child, .ld-checkout-flow form.checkout #order_review table.shop_table th + td { text-align: right; }
@media (max-width: 767px) {
	.ld-checkout-flow table.shop_table.cart tr.cart_item { grid-template-columns: 76px minmax(0, 1fr) auto !important; grid-template-areas: "thumb name remove" "thumb qty sub" !important; }
	.ld-checkout-flow table.shop_table.cart td.actions .coupon { flex: 1 1 100%; flex-wrap: wrap; }
	.ld-checkout-flow table.shop_table.cart td.actions .coupon .input-text { flex: 1 1 140px; width: auto !important; min-width: 0; }
	.ld-checkout-flow table.shop_table.cart td.actions > .button { width: 100%; }
	body.woocommerce-cart .ld-flow-wrap .woocommerce, .ld-checkout-flow table.shop_table.cart, .ld-checkout-flow .woocommerce-cart-form { min-width: 0; max-width: 100%; }
}

/* 1.2.0: contact buttons. Desktop: dark round buttons with gold hairline, label slides out on hover.
   Phones: labelled bar at the bottom (thumb zone, 56px targets, iPhone safe area). */
.ld-contact-buttons { position: fixed; right: 22px; bottom: 22px; z-index: 9990; display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.ld-contact-buttons a.ld-cb { position: relative; display: flex; align-items: center; justify-content: flex-end; text-decoration: none !important; color: #E2C887; }
.ld-cb-icon { display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 50%;
	background: #14110E; border: 1px solid rgba(201,165,92,.55); box-shadow: 0 8px 24px rgba(0,0,0,.35);
	transition: background .2s, border-color .2s, transform .2s; }
.ld-cb svg { width: 21px; height: 21px; fill: currentColor; }
.ld-contact-buttons a.ld-cb-wa { color: #25D366; }
.ld-cb-label { display: none; }
.ld-cb-label-desk { display: block; position: absolute; right: 64px; white-space: nowrap; padding: 9px 14px; border-radius: var(--ld-radius);
	background: #14110E; color: #F3EBDD; font: 400 13px/1 "Jost", sans-serif; letter-spacing: .04em; box-shadow: 0 8px 24px rgba(0,0,0,.3);
	opacity: 0; transform: translateX(8px); pointer-events: none; transition: opacity .2s, transform .2s; }
.ld-cb:hover .ld-cb-icon, .ld-cb:focus-visible .ld-cb-icon { background: #C9A55C; border-color: #C9A55C; transform: translateY(-2px); }
.ld-contact-buttons a.ld-cb:hover, .ld-contact-buttons a.ld-cb:focus-visible { color: #14110E; }
.ld-contact-buttons a.ld-cb-wa:hover, .ld-contact-buttons a.ld-cb-wa:focus-visible { color: #fff; }
.ld-cb-wa:hover .ld-cb-icon, .ld-cb-wa:focus-visible .ld-cb-icon { background: #25D366; border-color: #25D366; color: #fff; }
.ld-cb:hover .ld-cb-label-desk, .ld-cb:focus-visible .ld-cb-label-desk { opacity: 1; transform: none; }
.ld-cb:focus-visible { outline: none; }
.ld-cb:focus-visible .ld-cb-icon { box-shadow: 0 0 0 3px rgba(201,165,92,.45); }
@media (max-width: 767px) {
	.ld-contact-buttons { left: 0; right: 0; bottom: 0; flex-direction: row; align-items: stretch; gap: 0;
		padding: 0 0 env(safe-area-inset-bottom); background: rgba(11,10,9,.96); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
		border-top: 1px solid rgba(201,165,92,.35); box-shadow: 0 -6px 20px rgba(0,0,0,.25); }
	.ld-contact-buttons a.ld-cb { flex: 1 1 0; flex-direction: column; justify-content: center; gap: 4px; min-height: 58px; color: #E2C887; }
	.ld-cb + .ld-cb { border-left: 1px solid rgba(243,235,221,.10); }
	.ld-cb-icon { width: auto; height: auto; border: 0; background: none !important; box-shadow: none !important; transform: none !important; }
	.ld-cb svg { width: 20px; height: 20px; }
	.ld-contact-buttons a.ld-cb-wa { color: #25D366; }
	.ld-contact-buttons a.ld-cb:hover { color: #E2C887; }
	.ld-contact-buttons a.ld-cb-wa:hover { color: #25D366; }
	.ld-cb-label-desk { display: none; }
	.ld-cb-label-mob { display: block; font: 500 11px/1 "Jost", sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #F3EBDD; }
	.ld-cb:active { background: rgba(201,165,92,.14); }
	/* keep the footer end readable above the bar */
	body:not(.woocommerce-cart):not(.woocommerce-checkout) { padding-bottom: calc(58px + env(safe-area-inset-bottom)); }
}
@media print { .ld-contact-buttons { display: none; } }

/* 1.2.0: mobile usability */
@media (max-width: 767px) {
	/* content visible right away: no entrance animations on phones */
	.elementor-invisible { visibility: visible !important; }
	.elementor-element.animated { animation: none !important; }
	/* iOS zooms into fields below 16px */
	input[type=text], input[type=email], input[type=tel], input[type=number], input[type=search], input[type=password], input[type=url],
	select, textarea, .woocommerce .quantity .qty, .woocommerce form .input-text, .woocommerce-Input { font-size: 16px !important; }
	input[type=text], input[type=email], input[type=tel], input[type=number], input[type=password], select { min-height: 46px; }
	input[type=checkbox], input[type=radio] { width: 20px; height: 20px; flex: none; }

	/* header: logo left, icons right, burger at the far right, 40px+ touch targets */
	.elementor-element-bc68a88 { padding-left: 14px !important; padding-right: 8px !important; }
	.elementor-element-2a80e4a6 { flex: 1 1 auto !important; width: auto !important; padding: 0 !important; }
	.elementor-element-32e0c227 img { max-width: 150px !important; height: auto; }
	.elementor-element.elementor-element-227df4b2 { order: 3 !important; width: auto !important; padding: 0 !important; }
	.elementor-element-6795e387 { width: auto !important; gap: 0 !important; padding: 0 !important; }
	.elementor-element-2f6e4a24 .elementor-search-form__toggle { --e-search-form-toggle-size: 44px; width: 44px; height: 44px; }
	.elementor-element-2f6e4a24 .elementor-search-form__toggle > div { display: flex !important; align-items: center; justify-content: center; width: 44px !important; height: 44px !important; background: none !important; }
	.elementor-element-2f6e4a24 .elementor-search-form__toggle svg { width: 19px !important; height: 19px !important; }
	.elementor-element-39c624a5 .elementor-icon, .elementor-element-11f13e2b .elementor-menu-cart__toggle_button { min-width: 44px; min-height: 44px; display: inline-flex !important; align-items: center; justify-content: center; }
	.elementor-element-53862c5b .elementor-menu-toggle { width: 44px; height: 44px; }
	/* top bar: one tap target per line item */
	.elementor-element-7c917d1d .elementor-icon-list-item > a { padding: 8px 0; margin: -8px 0; }
	.elementor-element-7c917d1d .elementor-icon-list-text { font-size: 13px !important; }
	/* mobile menu: comfortable rows */
	.elementor-nav-menu--dropdown .elementor-item, .elementor-nav-menu--dropdown .elementor-sub-item { padding-top: 14px !important; padding-bottom: 14px !important; font-size: 15px !important; }

	/* footer lists and links */
	.elementor-location-footer .elementor-icon-list-item > a, .elementor-location-footer .elementor-icon-list-item { min-height: 40px; }
	.elementor-location-footer .elementor-icon-list-items { margin-left: 0 !important; margin-right: 0 !important; }
	.elementor-location-footer .elementor-icon-list-item { margin-left: 0 !important; padding-left: 0 !important; }
	.elementor-location-footer .elementor-social-icon { --icon-padding: 12px; }
	.elementor-location-footer .elementor-widget-icon-list { margin-left: 0 !important; margin-right: 0 !important; }

	/* breadcrumbs: bigger hit area */
	.ld-breadcrumb a, .woocommerce-breadcrumb a { display: inline-block; padding: 10px 0; margin: -10px 0; }

	/* product cards (2 columns): clear button, tidy legal lines, no delivery time in the grid */
	.woocommerce ul.products li.product { display: flex !important; flex-direction: column !important; }
	.woocommerce ul.products li.product > * { width: 100%; }
	.woocommerce ul.products li.product > a:first-child { width: auto; }
	.woocommerce ul.products li.product .button { display: flex !important; align-items: center; justify-content: center; width: 100%; min-height: 42px;
		margin-top: auto !important; font-size: 12px !important; padding: 8px 6px !important; line-height: 1.2 !important; white-space: normal; }
	.woocommerce ul.products li.product .ld-inquiry-loop + .button, .woocommerce ul.products li.product .button + .ld-inquiry-loop { margin-top: 6px !important; }
	.woocommerce ul.products li.product .wc-gzd-additional-info { font-size: 11px !important; line-height: 1.35 !important; }
	.woocommerce ul.products li.product .wc-gzd-additional-info.delivery-time-info,
	.woocommerce ul.products li.product p.delivery-time-info { display: none !important; }
	.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 15px !important; }

	/* shop filters */
	.ld-filters a, .widget_layered_nav a, .wc-block-product-categories-list a { display: inline-block; padding: 8px 0; }
	.ld-filters button, .widget_price_filter button { min-height: 42px; }

	/* product page */
	.woocommerce div.product form.cart .single_add_to_cart_button, .ld-inquiry-button { min-height: 50px; width: 100%; }
	.woocommerce div.product form.cart { display: flex; flex-wrap: wrap; gap: 10px; }
	.woocommerce div.product .reset_variations { display: inline-block; padding: 10px 0; font-size: 13px !important; }
	.woocommerce-product-gallery__trigger { width: 44px !important; height: 44px !important; }

	/* blog cards, accordions, small buttons */
	.elementor-post__read-more { display: inline-block; padding: 10px 0; font-size: 13px !important; }
	.elementor-accordion .elementor-tab-title { padding-top: 16px !important; padding-bottom: 16px !important; }
	.elementor-button.elementor-size-sm { min-height: 44px; display: inline-flex; align-items: center; }
	.ld-textlink a { display: inline-block; padding: 8px 0; }
	.woocommerce-form-login .show-password-input { width: 44px; height: 44px; }
	.woocommerce-LostPassword a { display: inline-block; padding: 8px 0; }
}

/* 1.2.0: shop filters collapsed on phones */
.ld-filters-toggle, button.ld-filters-toggle { display: none !important; }
@media (max-width: 767px) {
	.ld-filters--collapsible { padding-top: 0 !important; padding-bottom: 0 !important; gap: 0 !important; }
	.ld-filters--collapsible .ld-filters-toggle, .ld-filters--collapsible button.ld-filters-toggle { display: flex !important; align-items: center; justify-content: space-between; width: 100%; min-height: 54px; padding: 0 4px;
		background: none !important; border: 0 !important; color: #1A1714 !important; font: 500 15px/1 "Jost", sans-serif; letter-spacing: .06em; text-transform: uppercase; }
	.ld-filters--collapsible .ld-filters-toggle svg { width: 24px; height: 24px; fill: currentColor; transition: transform .2s; }
	.ld-filters--collapsible.is-open .ld-filters-toggle svg { transform: rotate(180deg); }
	.ld-filters--collapsible > .elementor-widget-heading { display: none !important; }
	.ld-filters--collapsible:not(.is-open) > .elementor-element { display: none !important; }
	.ld-filters--collapsible.is-open { padding-bottom: 20px !important; }
	.ld-filters--collapsible.is-open > .elementor-element { margin-bottom: 18px; }
}

/* 1.3.2: homepage room cards ("Antike Kronleuchter nach Raum"): titles scale with the card width,
   long words ("XXL Kronleuchter") never run out of the small cards */
@media (min-width: 768px) {
	.elementor-element-28877753 .elementor-cta__title { font-size: clamp(30px, 2.6vw, 44px) !important; line-height: 1.1 !important; overflow-wrap: break-word; hyphens: auto; }
}

/* 1.4.0: dropdowns: own chevron with breathing room instead of the browser arrow glued to the edge */
select:not([multiple]):not([size]) {
	-webkit-appearance: none !important; -moz-appearance: none !important; appearance: none !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238A6A2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important; background-position: right 16px center !important; background-size: 16px 16px !important;
	padding-right: 46px !important; cursor: pointer;
}
select:not([multiple]):not([size])::-ms-expand { display: none; }
.woocommerce-ordering select { padding-left: 18px !important; min-height: 46px; }

/* 1.4.1: product cards without buttons: the whole card is the link to the product page */
.ld-cards-link .woocommerce ul.products li.product .woocommerce-LoopProduct-link::after,
.ld-cards-link ul.products li.product .woocommerce-LoopProduct-link::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.ld-cards-link ul.products li.product { position: relative !important; cursor: pointer; transition: transform .2s, box-shadow .2s; }
.ld-cards-link ul.products li.product .woocommerce-LoopProduct-link { position: static !important; }
.ld-cards-link ul.products li.product .woocommerce-LoopProduct-link > * { position: relative; }
.ld-cards-link ul.products li.product a:not(.woocommerce-LoopProduct-link) { position: relative; z-index: 2; }
.ld-cards-link ul.products li.product .woocommerce-loop-product__title { transition: color .2s; }
.ld-cards-link ul.products li.product:hover .woocommerce-loop-product__title { color: #8A6A2E !important; }
@media (hover: hover) { .ld-cards-link ul.products li.product:hover { transform: translateY(-3px); } }
.ld-cards-link ul.products li.product { padding-bottom: 20px !important; }

/* 1.5.2: header search overlay, readable placeholder on the dark background */
.elementor-search-form--skin-full_screen input[type=search].elementor-search-form__input::placeholder { color: rgba(243,235,221,.6); opacity: 1; }
.elementor-search-form--skin-full_screen input[type=search].elementor-search-form__input { border-color: rgba(243,235,221,.35); }
.elementor-element-2f6e4a24 .elementor-search-form__toggle { --e-search-form-toggle-icon-size: 19px; }

/* 1.5.5: service strip on the homepage, five items: the antique one spans the row on phones */
@media (max-width: 767px) { .ld-strip-lead { grid-column: 1 / -1; } }

/* 1.6.1: add to cart on product pages (ld-atc.js) and WooCommerce notices outside cart/checkout/account */
.ld-atc-notice { flex: 0 0 100%; width: 100%; order: -1; box-sizing: border-box; margin: 0 0 14px; padding: 12px 16px; border: 1px solid #E9C9C0; border-left: 3px solid #B4442E; border-radius: var(--ld-radius); background: #FBF3F1; color: #6E2A1C; font: 400 14px/1.5 "Jost", sans-serif; }
.single_add_to_cart_button.loading { opacity: .65; cursor: wait; }
form.cart:has(> .ld-atc-notice) { flex-wrap: wrap !important; }
body:not(.ld-checkout-flow) .woocommerce-notices-wrapper:empty { display: none; }
body:not(.ld-checkout-flow) .woocommerce-message, body:not(.ld-checkout-flow) .woocommerce-info, body:not(.ld-checkout-flow) .woocommerce-error {
	max-width: 1160px; margin: 18px auto !important; padding: 14px 20px 14px 50px !important; background: #1A1714 !important; color: #F3EBDD !important;
	border: 1px solid rgba(201,165,92,.3) !important; border-left: 3px solid #C9A55C !important; border-radius: var(--ld-radius); font: 400 15px/1.5 "Jost", sans-serif; box-shadow: none;
	display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px;
}
body:not(.ld-checkout-flow) .woocommerce-error { border-left-color: #D0715C !important; }
body:not(.ld-checkout-flow) .woocommerce-message::before, body:not(.ld-checkout-flow) .woocommerce-info::before { color: #C9A55C !important; top: 50%; transform: translateY(-50%); }
body:not(.ld-checkout-flow) .woocommerce-error::before { color: #D0715C !important; top: 50%; transform: translateY(-50%); }
body:not(.ld-checkout-flow) .woocommerce-message a:not(.button), body:not(.ld-checkout-flow) .woocommerce-info a:not(.button) { color: #E2C887 !important; }
body:not(.ld-checkout-flow) .woocommerce-message .button, body:not(.ld-checkout-flow) .woocommerce-info .button {
	order: 2; margin-left: auto; float: none !important; padding: 10px 20px !important; background: #C9A55C !important; color: #0F0D0B !important; border: 0 !important; border-radius: var(--ld-radius) !important;
	font: 500 12px "Jost", sans-serif !important; letter-spacing: .1em; text-transform: uppercase;
}
body:not(.ld-checkout-flow) .woocommerce-message .button:hover { background: #E2C887 !important; }
@media (max-width: 767px) { body:not(.ld-checkout-flow) .woocommerce-message, body:not(.ld-checkout-flow) .woocommerce-info, body:not(.ld-checkout-flow) .woocommerce-error { margin: 12px 16px !important; } }

/* 1.7.0: header. FAQ, Kontakt, Referenzen sit in the top bar on desktop, stay in the mobile menu */
.elementor-nav-menu--main .ld-topbar-dup { display: none !important; }
/* Online-Shop submenu: made-to-measure hint, set apart from the categories */
.elementor-nav-menu--dropdown li.ld-menu-cta, .elementor-nav-menu--main .sub-menu li.ld-menu-cta { margin-top: 6px; border-top: 1px solid rgba(201,165,92,.25); }
.elementor-nav-menu li.ld-menu-cta > a { flex-direction: column; align-items: flex-start !important; gap: 2px; padding-top: 14px !important; padding-bottom: 14px !important; color: #E2C887 !important; font-style: italic; }
.elementor-nav-menu li.ld-menu-cta > a:hover { color: #F3EBDD !important; }
.ld-menu-cta-hint { display: block; font-style: normal; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: #A39A8D; }
/* top bar on phones: phone and opening hours only */
@media (max-width: 767px) {
	.elementor-element-575fb6a7 .elementor-repeater-item-04090a2 { display: none !important; }
	.elementor-element-575fb6a7 .elementor-icon-list-items { justify-content: center; gap: 4px 16px; }
}
.elementor-nav-menu--main li.ld-menu-cta > a { white-space: nowrap; }
.elementor-nav-menu--main .sub-menu:has(> li.ld-menu-cta) { min-width: 250px !important; }

/* 1.8.0: footer */
.ld-footer-cta a { color: inherit !important; }
.ld-footer-cta a:hover { color: #E2C887 !important; }
/* social icons: just the glyph, no tiles */
.elementor-element-321cde90 .elementor-social-icon { background: transparent !important; width: auto !important; height: auto !important; padding: 4px !important; margin-right: 10px; border-radius: 0 !important; }
.elementor-element-321cde90 .elementor-social-icon svg { width: 17px !important; height: 17px !important; fill: #CBC2B3 !important; transition: fill .2s; }
.elementor-element-321cde90 .elementor-social-icon:hover svg { fill: #C9A55C !important; }
.elementor-element-321cde90 .elementor-social-icon i { color: #CBC2B3 !important; font-size: 17px !important; }
/* trust row */
.ld-trust { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 28px; font: 400 13px/1.4 "Jost", sans-serif; color: #A39A8D; }
.ld-trust ul { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 0; padding: 0; list-style: none; }
.ld-trust-group { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin: 0; padding: 0; list-style: none; }
.ld-trust-label { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #8C7B5E; }
.ld-trust li { display: inline-flex; align-items: center; gap: 7px; color: #CBC2B3; }
.ld-trust li svg { width: 18px; height: 18px; color: #C9A55C; flex: none; }
.ld-gbadge.ld-gbadge--small { gap: 7px; padding: 4px 10px 4px 4px; border-radius: 999px; }
.ld-gbadge--small .ld-gbadge-g { width: 22px; height: 22px; border-radius: 50%; }
.ld-gbadge--small .ld-gbadge-g svg { width: 13px; height: 13px; }
.ld-gbadge--small .ld-gbadge-score { font-size: 14px; }
.ld-gbadge--small .ld-gbadge-stars svg { width: 11px; height: 11px; }
.ld-gbadge--small .ld-gbadge-sep { height: 14px; }
.ld-gbadge--small .ld-gbadge-count { font-size: 12px; }
@media (max-width: 767px) { .ld-trust { flex-direction: column; align-items: center; text-align: center; } .ld-trust ul, .ld-trust-group { justify-content: center; } }

/* 1.8.0: inquiry dialog (ld-inquiry-modal.js); full screen on phones */
html.ld-modal-open { overflow: hidden; }
.ld-modal { width: min(640px, calc(100vw - 32px)); max-height: calc(100dvh - 48px); padding: 0; border: 0; border-radius: var(--ld-radius); background: #fff; color: #3B342C; box-shadow: 0 30px 80px rgba(0,0,0,.45); overflow: auto; overscroll-behavior: contain; }
.ld-modal::backdrop { background: rgba(10,9,8,.72); backdrop-filter: blur(3px); }
.ld-modal-box { position: relative; padding: 34px 34px 28px; }
.ld-modal-close { position: sticky; top: 0; float: right; margin: -14px -14px 0 0; width: 40px; height: 40px; border: 0 !important; border-radius: 50% !important; background: #F3EFE8 !important; color: #1A1714 !important; font: 400 26px/1 "Jost", sans-serif !important; cursor: pointer; z-index: 2; padding: 0 !important; }
.ld-modal-close:hover { background: #1A1714 !important; color: #F3EBDD !important; }
.ld-modal-eyebrow { margin: 0 0 6px; font: 500 12px "Jost", sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #8A6A2E; }
.ld-modal-title { margin: 0 0 10px !important; font: 500 32px/1.15 "Cormorant Garamond", serif !important; color: #1A1714 !important; }
.ld-modal-product { margin: 0 0 18px; padding: 10px 14px; border-left: 3px solid #C9A55C; background: #FBF9F5; border-radius: 8px; font: 400 14px "Jost", sans-serif; }
@media (max-width: 767px) {
	.ld-modal { width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; margin: 0; border-radius: 0; }
	.ld-modal-box { padding: 18px 16px calc(24px + env(safe-area-inset-bottom)); }
	.ld-modal-close { margin: 0; }
	.ld-modal-title { font-size: 26px !important; }
}
/* 1.8.3: made-to-measure menu hint in normal case, a little smaller */
.elementor-nav-menu li.ld-menu-cta > a { text-transform: none !important; letter-spacing: .02em !important; font-size: 13px !important; }
.elementor-nav-menu li.ld-menu-cta .ld-menu-cta-hint { text-transform: none; letter-spacing: .02em; font-size: 11.5px; }
/* 1.9.0: footer trust row, secure shopping in green; credit link in the copyright line */
.ld-trust li.ld-trust-ssl svg { color: #4CAF6A; }
.ld-credit a { color: inherit !important; text-decoration: none; border-bottom: 1px solid rgba(243,235,221,.3); }
.ld-credit a:hover { color: #C9A55C !important; border-color: #C9A55C; }

/* 1.9.1: mobile fixes */
/* No sideways page swipe on phones: header top bar icon list (Elementor inline list, negative side margins) and late-initialising sliders. */
@media (max-width: 767px) {
	html, body { overflow-x: clip; }
	.elementor-element-575fb6a7 .elementor-icon-list-items.elementor-inline-items { margin-left: 0 !important; margin-right: 0 !important; }
}
/* cart in the phone bar (Einstellungen > Kontakt > Warenkorb in der Handy-Leiste); desktop keeps the header cart */
.ld-contact-buttons a.ld-cb-cart { display: none; }
.ld-cb-icon { position: relative; }
.ld-cb-count { position: absolute; top: -7px; right: -11px; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 9px;
	background: #C9A55C; color: #14110E; font: 600 10px/17px "Jost", sans-serif; text-align: center; }
.ld-cb-count[hidden] { display: none; }
@media (max-width: 767px) {
	.ld-contact-buttons a.ld-cb-cart { display: flex; }
}
/* homepage section 2: the "Aus unserer XXL Kollektion" card sits centred below the photo on phones, overlapping only its lower edge */
@media (max-width: 767px) {
	.ld-photo-wrap > .ld-photo-card { position: relative !important; left: auto; bottom: auto; width: calc(100% - 48px) !important; max-width: 340px;
		margin: -44px auto 0 !important; text-align: center; align-items: center; }
}
/* footer logo centred on tablets and phones (columns stack there) */
@media (max-width: 1024px) {
	.ld-footer-logo, .ld-footer-logo .elementor-widget-container { text-align: center !important; }
	.ld-footer-logo img { margin-left: auto; margin-right: auto; }
}
/* product page add to cart: the mini cart drawer opens instead of WooCommerce's "Warenkorb anzeigen" link next to the button;
   spinner while the cart is updated (the drawer follows within 1-2 s) */
form.cart a.added_to_cart { display: none !important; }
form.cart .single_add_to_cart_button.loading { position: relative; color: transparent !important; pointer-events: none; }
form.cart .single_add_to_cart_button.loading::after { content: ""; position: absolute; left: 50%; top: 50%; width: 18px; height: 18px; margin: -9px 0 0 -9px;
	border: 2px solid rgba(20,17,14,.25); border-top-color: #14110E; border-radius: 50%; animation: ld-spin .7s linear infinite; }
@keyframes ld-spin { to { transform: rotate(360deg); } }

/* 1.9.5: spec tables everywhere look like the short description table (.ld-spec):
   variation description (shown after choosing a size) and the "Zusätzliche Information" tab */
.woocommerce-variation-description { color: #4A4239; font-family: "Jost", sans-serif; font-size: 15px; margin: 10px 0 0; }
.woocommerce-variation-description table, .ld-tabs table.shop_attributes {
	width: 100%; border-collapse: separate !important; border-spacing: 0; border: 1px solid #E9E2D6 !important; border-radius: var(--ld-radius); overflow: hidden; margin: 6px 0 0; }
.woocommerce-variation-description table td, .ld-tabs table.shop_attributes th, .ld-tabs table.shop_attributes td {
	padding: 11px 16px !important; border: 0 !important; border-bottom: 1px solid #F0EBE2 !important; background: #fff !important; color: #1A1714; font-size: 14px; font-style: normal; text-align: left; }
.woocommerce-variation-description table tr:last-child td, .ld-tabs table.shop_attributes tr:last-child th, .ld-tabs table.shop_attributes tr:last-child td { border-bottom: 0 !important; }
.woocommerce-variation-description table td:first-child, .ld-tabs table.shop_attributes th { width: 42%; color: #8B8378; font-weight: 400; background: #FBF9F5 !important; }
.ld-tabs table.shop_attributes td p { margin: 0; padding: 0; font-style: normal; }

/* 1.10.0: inquiry forms */
/* general form (Startseite): every question in the same style */
.ld-steps .ld-q, .ld-steps .ld-step legend.ld-q { display: block; margin: 0 0 12px; padding: 0; font-family: "Cormorant Garamond", serif !important; font-size: 24px !important;
	line-height: 1.15; color: #141210 !important; letter-spacing: 0 !important; text-transform: none !important; }
.ld-steps .ld-chips .ld-q { margin-top: 8px; }
@media (max-width: 767px) { .ld-steps .ld-q, .ld-steps .ld-step legend.ld-q { font-size: 21px !important; } }
/* short form in the modal */
.ld-short-form textarea { min-height: 110px; }
.ld-modal .ld-short-form input[type=submit] { width: 100%; justify-self: stretch; }
/* FAQ: topic headings above each accordion */
.ld-faq-group .elementor-heading-title { font-family: "Cormorant Garamond", serif !important; font-size: 28px !important; font-weight: 500 !important; line-height: 1.2; color: #1A1714 !important; }

/* desktop: sticky header; the top bar (phone, hours) scrolls away, the main bar stays */
@media (min-width: 1025px) {
	.elementor-location-header { position: sticky; top: -43px; z-index: 990; }
	body.admin-bar .elementor-location-header { top: calc(32px - 43px); }
	.elementor-location-header.ld-stuck .elementor-element-bc68a88 { box-shadow: 0 6px 24px rgba(0,0,0,.35); }
}

/* homepage service: slim rental CTA card below Reparatur / Reinigung */
.ld-rent-card .ld-rent-title .elementor-heading-title { font-size: 26px !important; line-height: 1.2 !important; margin: 0; }
@media (max-width: 767px) { .ld-rent-card .ld-rent-title .elementor-heading-title { font-size: 22px !important; } }
.ld-rent-card .elementor-widget-button { flex-shrink: 0; }
/* anchors (e.g. /service/#vermietung) land below the sticky header */
@media (min-width: 1025px) { .e-con[id] { scroll-margin-top: 140px; } }
.ld-rent-card { position: relative; overflow: hidden; }
.ld-rent-card::before { content: "" !important; position: absolute; inset: 0; z-index: 0; border-radius: inherit; width: auto !important; height: auto !important;
	background: linear-gradient(90deg, rgba(11,10,9,.94) 0%, rgba(11,10,9,.86) 55%, rgba(11,10,9,.55) 100%); }
.ld-rent-card > * { position: relative; z-index: 1; }
.ld-rent-card > .e-con:first-child { flex: 1 1 auto !important; width: auto !important; min-width: 0; }
@media (max-width: 767px) { .ld-rent-card::before { background: rgba(11,10,9,.86); } }
.ld-rent-card .ld-rent-title { width: 100% !important; max-width: none !important; }

/* 1.11.0: Referenzen page */
.ld-ref-hero { position: relative; }
.ld-ref-hero .ld-hero-badge { width: auto; }
/* key figures */
.ld-stats .ld-stat { border-top: 1px solid #E9E2D6; padding-top: 18px !important; }
.ld-stat-num .elementor-heading-title { font: 500 46px/1 "Cormorant Garamond", serif !important; color: #8A6A2E !important; }
.ld-stat-label .elementor-heading-title { font: 400 13px/1.4 "Jost", sans-serif !important; letter-spacing: .12em; text-transform: uppercase; color: #6B6359 !important; }
/* project cases: image + text card */
.ld-case { background: #1A1714; border: 1px solid #2E2822; border-radius: var(--ld-radius); overflow: hidden; }
.ld-case-media, .ld-case-media .elementor-widget-image, .ld-case-media .elementor-widget-container, .ld-case-media a { height: 100%; }
.ld-case-img img { width: 100% !important; height: 100% !important; min-height: 420px; object-fit: cover; display: block; transition: transform .6s ease; }
.ld-case:hover .ld-case-img img { transform: scale(1.03); }
.ld-case-title .elementor-heading-title { font: 500 34px/1.15 "Cormorant Garamond", serif !important; color: #F3EBDD !important; margin: 0; }
.ld-case-thumbs .gallery { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 4px 0 0 !important; }
.ld-case-thumbs .gallery-item { margin: 0 !important; padding: 0 !important; width: auto !important; max-width: none !important; }
.ld-case-thumbs img { aspect-ratio: 1; object-fit: cover; width: 100%; height: auto; border-radius: 8px !important; border: 0 !important; opacity: .9; transition: opacity .2s; }
.ld-case-thumbs a:hover img { opacity: 1; }
@media (max-width: 767px) {
	.ld-case-img img { min-height: 0; aspect-ratio: 4 / 3; }
	.ld-case-title .elementor-heading-title { font-size: 28px !important; }
	.ld-stat-num .elementor-heading-title { font-size: 36px !important; }
}
/* filterable masonry gallery: whole photos (no 4:3 crop), filter chips */
.ld-refgallery .elementor-gallery__titles-container { justify-content: center; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.ld-refgallery .elementor-gallery-title { font: 500 12px "Jost", sans-serif !important; letter-spacing: .12em; text-transform: uppercase; color: #1A1714 !important;
	border: 1px solid #DDD4C6; border-radius: 999px; padding: 10px 18px !important; white-space: nowrap; background: #fff; }
.ld-refgallery .elementor-gallery-title::before, .ld-refgallery .elementor-gallery-title::after { display: none !important; }
.ld-refgallery .elementor-gallery-title.elementor-item-active, .ld-refgallery .elementor-gallery-title:hover { background: #1A1714; color: #F3EBDD !important; border-color: #1A1714; }
.ld-refgallery .e-gallery-item { border-radius: var(--ld-radius); overflow: hidden; }
@media (max-width: 767px) {
	.ld-refgallery .elementor-gallery__titles-container { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; padding-bottom: 6px; -webkit-overflow-scrolling: touch; }
}
/* closing CTA on a photo */
.ld-ref-cta { position: relative; }
.ld-ref-cta::before { content: "" !important; position: absolute; inset: 0; z-index: 0; background: rgba(11,10,9,.84); width: auto !important; height: auto !important; }
.ld-ref-cta > * { position: relative; z-index: 1; }
/* grids size their rows to the content (Elementor's grid adds empty fixed rows) */
.e-con.ld-ref-grid { grid-template-rows: none !important; grid-auto-rows: auto; }
.ld-ref-services .elementor-cta__title { font-size: 28px !important; line-height: 1.15 !important; }
.ld-ref-services .elementor-cta { min-height: 320px; }

/* "In den Medien": small link card (homepage, Über Light Delux) and thin strip (Über uns) */
.ld-media-mini-wrap p { margin: 0; }
a.ld-media-mini { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; padding: 12px 18px; border: 1px solid rgba(201,165,92,.45); border-radius: var(--ld-radius);
	text-decoration: none !important; transition: border-color .2s, background .2s; }
a.ld-media-mini:hover { border-color: #C9A55C; background: rgba(201,165,92,.08); }
.ld-media-mini-label { font: 500 11px "Jost", sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #C9A55C; }
.ld-media-mini-text { font: 400 14px "Jost", sans-serif; color: #F3EBDD; }
.ld-media-mini-go { font: 500 12px "Jost", sans-serif; letter-spacing: .1em; text-transform: uppercase; color: #E2C887; }
.ld-media-strip { border-top: 1px solid #2E2822; border-bottom: 1px solid #2E2822; }
.ld-media-strip-eyebrow .elementor-heading-title { font: 500 12px "Jost", sans-serif !important; letter-spacing: .16em; text-transform: uppercase; color: #C9A55C !important; }
.ld-media-strip-title .elementor-heading-title { font: 500 24px/1.25 "Cormorant Garamond", serif !important; color: #F3EBDD !important; }
.ld-media-strip-btn .elementor-button { background: transparent !important; border: 1px solid #C9A55C !important; color: #E2C887 !important; border-radius: 0 !important;
	font: 500 13px "Jost", sans-serif !important; letter-spacing: .12em; text-transform: uppercase; padding: 13px 24px !important; }
.ld-media-strip-btn .elementor-button:hover { background: #C9A55C !important; color: #0F0D0B !important; }
@media (max-width: 767px) { .ld-media-strip-title .elementor-heading-title { font-size: 20px !important; } }

/* 1.12.0: homepage "nach Raum", variant B: aligned bento grid of category tiles ([ld_room_tiles]) */
.ld-rooms { display: grid; grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, 260px); gap: 16px; }
a.ld-room { position: relative; display: block; overflow: hidden; border-radius: var(--ld-radius); background: #1A1714; text-decoration: none !important; isolation: isolate; }
a.ld-room--big { grid-column: span 2; grid-row: span 2; }
.ld-room .ld-room-img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; object-fit: cover; transition: transform .7s ease; z-index: -2; }
a.ld-room::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(11,10,9,0) 35%, rgba(11,10,9,.88) 100%); transition: background .3s; }
a.ld-room:hover .ld-room-img, a.ld-room:focus-visible .ld-room-img { transform: scale(1.05); }
a.ld-room:hover::after { background: linear-gradient(180deg, rgba(11,10,9,.05) 25%, rgba(11,10,9,.92) 100%); }
.ld-room-body { position: absolute; left: 0; right: 0; bottom: 0; display: flex; flex-direction: column; gap: 4px; padding: 20px 22px; }
.ld-room-count { font: 500 11px "Jost", sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #E2C887; }
.ld-room-title { font: 500 28px/1.1 "Cormorant Garamond", serif; color: #F3EBDD; hyphens: none; }
.ld-room--big .ld-room-title { font-size: 44px; }
.ld-room-desc { font: 300 14px/1.45 "Jost", sans-serif; color: #D8CFC0; }
.ld-room-go { margin-top: 6px; font: 500 12px "Jost", sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #E2C887; }
a.ld-room:not(.ld-room--big) .ld-room-desc { display: none; }
a.ld-room:focus-visible { outline: 2px solid #C9A55C; outline-offset: 3px; }
a.ld-room-mass { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin-top: 16px; padding: 18px 24px; border: 1px solid rgba(201,165,92,.45); border-radius: var(--ld-radius);
	text-decoration: none !important; transition: background .2s, border-color .2s; }
a.ld-room-mass:hover { background: rgba(201,165,92,.08); border-color: #C9A55C; }
.ld-room-mass-q { font: 500 12px "Jost", sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #C9A55C; }
.ld-room-mass-a { font: 500 22px/1.2 "Cormorant Garamond", serif; color: #F3EBDD; }
.ld-room-mass-go { margin-left: auto; font-size: 22px; color: #E2C887; }
@media (max-width: 1024px) {
	.ld-rooms { grid-template-columns: repeat(2, 1fr); grid-template-rows: none; grid-auto-rows: 220px; }
	a.ld-room--big { grid-column: span 2; grid-row: span 1; }
	a.ld-room--big { grid-row: span 2; }
}
@media (max-width: 767px) {
	.ld-rooms { gap: 10px; grid-auto-rows: 180px; }
	.ld-room-body { padding: 14px; }
	.ld-room-title { font-size: 22px; }
	.ld-room--big .ld-room-title { font-size: 32px; }
	.ld-room-mass-a { font-size: 19px; }
	.ld-room-mass-go { margin-left: 0; }
}
.ld-rooms-b a.ld-rooms-all { color: #E2C887; text-decoration: none; border-bottom: 1px solid rgba(226,200,135,.4); white-space: nowrap; }
.ld-rooms-b a.ld-rooms-all:hover { border-bottom-color: #E2C887; }
.ld-room-body > span { text-shadow: 0 1px 12px rgba(0,0,0,.65); }
a.ld-room::after { background: linear-gradient(180deg, rgba(11,10,9,0) 30%, rgba(11,10,9,.92) 100%); }

/* 1.12.3: inquiry modal close button: thin drawn cross, no glyph (theme button styles kept it off-centre) */
.ld-modal .ld-modal-close { width: 36px !important; height: 36px !important; min-width: 0 !important; margin: -12px -12px 0 8px; padding: 0 !important;
	background: transparent !important; border: 1px solid transparent !important; border-radius: 50% !important; box-shadow: none !important;
	font-size: 0 !important; line-height: 0 !important; color: transparent !important; text-indent: -999px; overflow: hidden; transition: border-color .2s, transform .3s; }
.ld-modal .ld-modal-close::before, .ld-modal .ld-modal-close::after { content: ""; position: absolute; left: 50%; top: 50%; width: 18px; height: 1.5px; margin: -.75px 0 0 -9px;
	background: #1A1714; border-radius: 1px; transform: rotate(45deg); transition: background .2s; }
.ld-modal .ld-modal-close::after { transform: rotate(-45deg); }
.ld-modal .ld-modal-close:hover, .ld-modal .ld-modal-close:focus-visible { background: transparent !important; border-color: #C9A55C !important; transform: rotate(90deg); outline: none; }
.ld-modal .ld-modal-close:hover::before, .ld-modal .ld-modal-close:hover::after, .ld-modal .ld-modal-close:focus-visible::before, .ld-modal .ld-modal-close:focus-visible::after { background: #8A6A2E; }
@media (max-width: 767px) { .ld-modal .ld-modal-close { margin: 0 0 0 8px; } }

/* 1.12.4: homepage hero YouTube background: crop YouTube's title bar / logo at the edges, no taps reaching the player
   (the video loops at 27 s, before YouTube's end screen; Elementor setting "Endzeit") */
.elementor-element-51a5a993 .elementor-background-video-container { pointer-events: none; overflow: hidden; }
.elementor-element-51a5a993 .elementor-background-video-embed { transform: translate(-50%, -50%) scale(1.2) !important; transform-origin: center center; }

/* homepage hero: short points under the intro sentence */
.ld-hero-points .elementor-icon-list-text { font: 400 16px/1.4 "Jost", sans-serif !important; color: #EDE5D6 !important; letter-spacing: .01em; }
.ld-hero-points .elementor-icon-list-icon i, .ld-hero-points .elementor-icon-list-icon svg { color: #C9A55C !important; fill: #C9A55C !important; }
@media (max-width: 767px) { .ld-hero-points .elementor-icon-list-text { font-size: 14px !important; } }
