/* Keep the gradient painted while its colours interpolate; no transparent flash. */
@property --lmp-button-start {
  syntax:"<color>";
  inherits:false;
  initial-value:transparent;
}
@property --lmp-button-end {
  syntax:"<color>";
  inherits:false;
  initial-value:transparent;
}
:root { --lmp-button-duration:420ms; --lmp-button-transition:var(--lmp-button-duration) ease-in-out; }

/* Semantic aliases. Palette, sizes and component tokens live in theme.json. */
/* Native galleries share layout, rounding and responsive behaviour everywhere. */
.wp-block-gallery.lmp-article-gallery.has-nested-images {
  --lmp-gallery-columns:3;
  display:grid; grid-template-columns:repeat(var(--lmp-gallery-columns),minmax(0,1fr));
  gap:var(--wp--preset--spacing--30); margin-block:28px 40px; align-items:start;
}
.wp-block-gallery.lmp-article-gallery.columns-1 { --lmp-gallery-columns:1; }
.wp-block-gallery.lmp-article-gallery.columns-2 { --lmp-gallery-columns:2; }
.wp-block-gallery.lmp-article-gallery.columns-4 { --lmp-gallery-columns:4; }
.wp-block-gallery.lmp-article-gallery.columns-5 { --lmp-gallery-columns:5; }
.wp-block-gallery.lmp-article-gallery.columns-6 { --lmp-gallery-columns:6; }
.wp-block-gallery.lmp-article-gallery > figure.wp-block-image {
  width:100% !important; min-width:0; margin:0; overflow:hidden; border-radius:var(--lmp-radius);
}
.wp-block-gallery.lmp-article-gallery.is-cropped > figure.wp-block-image { aspect-ratio:4/3; }
.wp-block-gallery.lmp-article-gallery.is-cropped > figure.wp-block-image img { width:100%; height:100%; object-fit:cover; }
.wp-block-gallery.lmp-article-gallery:not(.is-cropped) > figure.wp-block-image img { width:100%; height:auto !important; object-fit:contain; }
@media(max-width:760px) {
  .wp-block-gallery.lmp-article-gallery.has-nested-images:not(.columns-1) { --lmp-gallery-columns:2; }
}
@media(max-width:480px) {
  .wp-block-gallery.lmp-article-gallery.has-nested-images:not(.columns-1) { --lmp-gallery-columns:1; }
}
:root {
  --lmp-brand: var(--wp--preset--color--signal);
  --lmp-ink: var(--wp--preset--color--ink);
  --lmp-paper: var(--wp--preset--color--paper);
  --lmp-canvas: var(--wp--preset--color--canvas);
  --lmp-muted: var(--wp--preset--color--muted);
  --lmp-line: var(--wp--preset--color--line);
  --lmp-border: 1px solid var(--lmp-line);
  --lmp-radius: var(--wp--custom--radius--card);
  --lmp-transition: var(--wp--custom--motion--fast) var(--wp--custom--motion--ease);
}
html { scroll-behavior: smooth; scroll-padding-top: 32px; }
body { margin: 0; -webkit-font-smoothing: antialiased; }
* { box-sizing: border-box; }
img { max-width: 100%; height: auto; }
a { text-underline-offset: .2em; text-decoration-thickness: 1px; transition: color var(--lmp-transition), background-color var(--lmp-transition); }
a:hover { text-decoration-thickness: 2px; }
:where(a, button, input, textarea, select, summary):focus-visible, .lmp-focus-demo .wp-element-button {
  outline: var(--wp--custom--focus--width) solid currentColor;
  outline-offset: var(--wp--custom--focus--offset);
}
.wp-block-button .wp-block-button__link, .wp-element-button, .wp-block-search__button, #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn {
  --lmp-button-start:var(--lmp-brand); --lmp-button-end:color-mix(in srgb,var(--lmp-brand) 90%,var(--lmp-paper));
  min-height: var(--wp--custom--button--height); gap: .75em; align-items: center; justify-content: center;
  background:linear-gradient(135deg,var(--lmp-button-start),var(--lmp-button-end));
  transition: --lmp-button-start var(--lmp-button-transition), --lmp-button-end var(--lmp-button-transition), color var(--lmp-button-transition), border-color var(--lmp-button-transition), box-shadow var(--lmp-button-transition), transform var(--lmp-button-transition);
  cursor: pointer;
}
.wp-block-button .wp-block-button__link, .wp-element-button:not(.cmplz-btn), .wp-block-search__button { display:inline-flex; }
.wp-block-button__link:is(:hover,:focus-visible), .lmp-hover-demo .wp-block-button__link { --lmp-button-start:var(--lmp-ink); --lmp-button-end:var(--lmp-ink); color: var(--lmp-brand); }
/* Actual Complianz component: central tokens and the shared button base above. */
.lmp-consent-placeholder { background:var(--lmp-gradient-light); color:var(--lmp-ink); border:var(--lmp-border); border-radius:var(--lmp-radius); padding:var(--wp--preset--spacing--40); }
.lmp-consent-placeholder p { max-width:70ch; }
.lmp-consent-actions { display:flex; flex-wrap:wrap; align-items:center; gap:1.25rem; }
.lmp-consent-link { font:inherit; color:inherit; background:transparent; border:0; padding:0; cursor:pointer; }
.lmp-footer-bottom .lmp-consent-link { font-size:var(--wp--preset--font-size--caption); }
.lmp-consent-link:is(:hover,:focus-visible) { text-decoration:underline; text-underline-offset:.2em; }
[data-lmp-consent-open][hidden], .lmp-landwirt [hidden] { display:none !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner {
  width:min(540px,calc(100vw - 40px)); max-height:calc(100dvh - 40px);
  padding:var(--wp--preset--spacing--40); gap:var(--wp--preset--spacing--30);
  background:var(--lmp-gradient-light); color:var(--lmp-ink);
  border:var(--lmp-border); border-radius:var(--lmp-radius);
  box-shadow:0 16px 60px color-mix(in srgb,var(--lmp-ink) 18%,transparent);
  font-family:var(--wp--preset--font-family--brand); font-size:var(--wp--preset--font-size--small); line-height:1.6;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header { grid-template-columns:1fr; padding:0; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title { grid-column:1; font-size:var(--wp--preset--font-size--h-5); font-weight:750; text-align:left; color:var(--lmp-ink); }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { font:inherit; color:var(--lmp-muted); }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message p { margin:0; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn { width:100%; margin:0; height:auto; font:inherit; font-weight:700; border:1px solid var(--lmp-line); }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-ink); --lmp-button-end:var(--lmp-ink); color:var(--lmp-paper); border-color:var(--lmp-ink); }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-deny { --lmp-button-start:var(--lmp-paper); --lmp-button-end:var(--lmp-paper); color:var(--lmp-ink); }
#cmplz-cookiebanner-container .cmplz-cookiebanner :is(.cmplz-view-preferences,.cmplz-save-preferences) { grid-column:1/-1; --lmp-button-start:var(--lmp-canvas); --lmp-button-end:var(--lmp-paper); color:var(--lmp-ink); }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category { background:var(--lmp-canvas); border-radius:var(--wp--custom--radius--field); margin-block:8px; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-title { font:inherit; font-weight:700; color:var(--lmp-ink); }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-description { color:var(--lmp-muted); font:inherit; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-always-active { color:var(--wp--preset--color--success); }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-divider { border-color:var(--lmp-line); }
#cmplz-cookiebanner-container .lmp-consent-legal { display:flex; flex-wrap:wrap; justify-content:center; gap:20px; }
#cmplz-cookiebanner-container .lmp-consent-legal a { color:var(--lmp-muted); font:inherit; text-decoration:underline; }
#cmplz-manage-consent .cmplz-manage-consent { font-family:var(--wp--preset--font-family--brand); background:var(--lmp-ink); color:var(--lmp-paper); border:var(--lmp-border); border-radius:12px 12px 0 0; }
@media(max-width:600px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner { width:auto; min-width:0; max-width:calc(100% - 24px); max-height:calc(100dvh - 24px); margin:0; right:12px; left:12px; bottom:12px; transform:none; padding:20px; }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { grid-template-columns:1fr; }
}
.wp-block-button.is-style-secondary .wp-block-button__link { --lmp-button-start:var(--lmp-ink); --lmp-button-end:var(--lmp-muted); color: var(--lmp-paper); }
.wp-block-button.is-style-secondary .wp-block-button__link:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-brand); --lmp-button-end:var(--lmp-brand); color: var(--lmp-ink); }
.wp-block-button.is-style-outline .wp-block-button__link { --lmp-button-start:transparent; --lmp-button-end:transparent; border: 1px solid currentColor; color: inherit; }
.wp-block-button.is-style-outline .wp-block-button__link:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-ink); --lmp-button-end:var(--lmp-ink); color: var(--lmp-paper); border-color: var(--lmp-ink); }
/* Shared outline variant for every existing dark surface, including page heroes. */
:is(.lmp-dark,.lmp-page-intro,.lmp-section-shell-dark,.lmp-promo-copy,.lmp-contact-panel) .wp-block-button.is-style-outline .wp-block-button__link {
  --lmp-button-start:transparent; --lmp-button-end:transparent; color:var(--lmp-paper); border-color:var(--lmp-paper);
}
:is(.lmp-dark,.lmp-page-intro,.lmp-section-shell-dark,.lmp-promo-copy,.lmp-contact-panel) .wp-block-button.is-style-outline .wp-block-button__link:is(:hover,:focus-visible) {
  --lmp-button-start:var(--lmp-paper); --lmp-button-end:var(--lmp-paper); color:var(--lmp-ink); border-color:var(--lmp-paper);
}
.wp-block-button.is-style-quiet .wp-block-button__link { --lmp-button-start:transparent; --lmp-button-end:transparent; color: inherit; border-color: transparent; text-decoration: underline; text-underline-offset: .25em; }
/* The card is the button's surface, even when its surrounding section is dark. */
.is-style-lmp-card:not(.lmp-dark):not(.lmp-card-accent) .wp-block-button.is-style-outline .wp-block-button__link {
  --lmp-button-start:transparent; --lmp-button-end:transparent; color:var(--lmp-ink); border-color:var(--lmp-ink);
}
.is-style-lmp-card:not(.lmp-dark):not(.lmp-card-accent) .wp-block-button.is-style-outline .wp-block-button__link:is(:hover,:focus-visible) {
  --lmp-button-start:var(--lmp-ink); --lmp-button-end:var(--lmp-ink); color:var(--lmp-paper); border-color:var(--lmp-ink);
}
.wp-block-button.is-style-quiet .wp-block-button__link:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-canvas); --lmp-button-end:var(--lmp-canvas); color: var(--lmp-ink); }
.wp-block-button.is-style-small .wp-block-button__link { min-height: 40px; padding-block: .6rem; padding-inline: var(--wp--preset--spacing--30); }
.lmp-disabled-demo .wp-block-button__link, .wp-element-button[aria-disabled="true"] { --lmp-button-start:var(--lmp-line); --lmp-button-end:var(--lmp-line); color: var(--lmp-muted); cursor: not-allowed; pointer-events: none; }
.is-style-lmp-card { background: var(--lmp-paper); border: var(--lmp-border); border-radius: var(--lmp-radius); padding: var(--wp--preset--spacing--50); }
.wp-block-search__inside-wrapper { gap: var(--wp--preset--spacing--20); }
.wp-block-search__label { display: block; font-size: var(--wp--preset--font-size--small); font-weight: 700; margin-bottom: var(--wp--preset--spacing--20); }
.wp-block-search__input { min-width: 0; min-height: var(--wp--custom--button--height); background: var(--lmp-paper); border: var(--lmp-border); border-radius: var(--wp--custom--radius--field); padding: .75rem 1rem; font: inherit; color: var(--lmp-ink); }
.wp-block-search__input::placeholder { color: var(--lmp-muted); }
.wp-block-search__button { margin: 0; }
.wp-block-details { border-top: var(--lmp-border); padding-block: var(--wp--preset--spacing--40); }
.wp-block-details summary { font-weight: 700; cursor: pointer; }
.wp-block-details p { color: var(--lmp-muted); margin-bottom: 0; }
.wp-block-table { margin-inline: 0; }
.wp-block-table td,.wp-block-table th { padding: 1rem; border: var(--lmp-border); text-align: left; }
.wp-block-table th { background: var(--lmp-canvas); }
.lmp-header { background: var(--lmp-gradient-dark); color: var(--lmp-paper); margin: 0; padding: 1.25rem var(--wp--preset--spacing--40); }
.lmp-header-inner { min-height: 48px; gap: var(--wp--preset--spacing--40); }
.lmp-header-label { margin: 0; font-size: .6875rem; letter-spacing: .1em; font-weight: 700; }
.lmp-header-label span { opacity: .65; letter-spacing: 0; font-weight: 400; }
.lmp-header .wp-block-buttons { margin: 0; }
.lmp-header .wp-block-button__link { min-height: 40px; padding-block: .65rem; }
.lmp-header .is-style-outline .wp-block-button__link:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-brand); --lmp-button-end:var(--lmp-brand); color: var(--lmp-ink); border-color: var(--lmp-brand); }
.lmp-main { padding-block: 0 var(--wp--preset--spacing--80); }
.lmp-footer { background: var(--lmp-gradient-dark); color: var(--lmp-paper); padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--40); }
.lmp-footer a { color: inherit; }
.lmp-footer p { margin: 0; }
.wp-site-blocks > * + * { margin-block-start: 0; }
.lmp-ci { margin-top: 0; }
.lmp-ci-hero { background:var(--lmp-gradient-light); padding-block: clamp(48px,7vw,96px) var(--wp--preset--spacing--60); }
.lmp-ci-kicker { margin: 0 0 var(--wp--preset--spacing--40); font-size: var(--wp--preset--font-size--caption); letter-spacing: .12em; text-transform: uppercase; font-weight: 800; }
.lmp-ci-kicker::before { content: ''; display:inline-block; width: .65rem; height: .65rem; background:var(--lmp-brand); border:1px solid var(--lmp-ink); margin-right: .6rem; }
.lmp-ci-hero h1 { max-width: 950px; margin-top: 0; }
.lmp-ci-hero .lmp-lead { max-width: 660px; color: var(--lmp-muted); margin-top: var(--wp--preset--spacing--40); }
.lmp-ci-meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap: 1rem; padding-block: var(--wp--preset--spacing--40); border-top: var(--lmp-border); border-bottom: var(--lmp-border); font-size:var(--wp--preset--font-size--small); }
.lmp-ci-meta p { margin:0; }
.lmp-status { color: var(--wp--preset--color--success); font-weight:700; }
.lmp-status::before { content:''; width:.45rem; height:.45rem; display:inline-block; background:currentColor; border-radius:50%; margin-right:.5rem; }
.lmp-ci-layout { display:grid; grid-template-columns: 190px minmax(0,1fr); gap: clamp(32px,5vw,80px); align-items:start; margin-top:var(--wp--preset--spacing--60); }
.lmp-ci-sidebar { position:sticky; top:32px; }
.lmp-ci-sidebar > p { margin:0 0 .65rem; }
.lmp-ci-sidebar > p:first-child { font-size:var(--wp--preset--font-size--caption); font-weight:800; letter-spacing:.1em; text-transform:uppercase; margin-bottom:1.5rem; }
.lmp-ci-sidebar a { display:block; text-decoration:none; font-size:var(--wp--preset--font-size--small); color:var(--lmp-muted); padding:.35rem .5rem; border-left:2px solid transparent; }
.lmp-ci-sidebar a:hover,.lmp-ci-sidebar a[aria-current="location"] { border-color:var(--lmp-ink); color:var(--lmp-ink); background:var(--lmp-paper); }
.lmp-ci-sidebar .lmp-sidebar-note { font-size:var(--wp--preset--font-size--caption); color:var(--lmp-muted); border-top:var(--lmp-border); padding-top:1.5rem; margin-top:2rem; }
.lmp-ci-content { min-width:0; }
.lmp-ci-section { margin-top:var(--wp--preset--spacing--80); scroll-margin-top:32px; }
.lmp-ci-section:first-child { margin-top:0; }
.lmp-ci-section > .lmp-section-no { font-size:var(--wp--preset--font-size--caption); font-weight:800; letter-spacing:.1em; color:var(--lmp-muted); margin-bottom:.75rem; }
.lmp-ci-section > h2 { margin-top:0; }
.lmp-ci-section > .lmp-section-intro { color:var(--lmp-muted); max-width:650px; margin-top:1rem; margin-bottom:2rem; }
.is-style-lmp-card :is(h2,h3),.lmp-principle h3 { font-size:var(--wp--preset--font-size--h-4); letter-spacing:-.025em; }
.lmp-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--wp--preset--spacing--30); }
.lmp-grid > * { min-width:0; margin:0; }
.lmp-grid + .is-style-lmp-card { margin-block-start:var(--wp--preset--spacing--30); }
.lmp-grid-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.lmp-swatch { background:var(--lmp-paper); border:var(--lmp-border); border-radius:var(--lmp-radius); overflow:hidden; }
.lmp-swatch-color { min-height:100px; padding:0; margin:0; }
.lmp-swatch:first-child .lmp-swatch-color { min-height:140px; }
.lmp-swatch:nth-child(2) .lmp-swatch-color,.lmp-swatch:nth-child(3) .lmp-swatch-color { min-height:140px; }
.lmp-swatch-label { padding:1rem 1.1rem; margin:0; }
.lmp-swatch-label p { margin:0; font-size:var(--wp--preset--font-size--small); }
.lmp-token-value { color:var(--lmp-muted); font-size:var(--wp--preset--font-size--caption) !important; font-variant-numeric:tabular-nums; }
.lmp-note { border-left:3px solid var(--lmp-brand); padding-left:var(--wp--preset--spacing--40); font-size:var(--wp--preset--font-size--small); color:var(--lmp-muted); }
.lmp-type-list { background:var(--lmp-paper); border:var(--lmp-border); border-radius:var(--lmp-radius); overflow:hidden; }
.lmp-type-row { display:grid; grid-template-columns:90px minmax(0,1fr); gap:1rem; align-items:center; padding:1.5rem; border-bottom:var(--lmp-border); margin:0; }
.lmp-type-row:last-child { border-bottom:0; }
.lmp-type-info p { margin:0; font-size:var(--wp--preset--font-size--caption); color:var(--lmp-muted); }
.lmp-type-info p:first-child { color:var(--lmp-ink); font-weight:800; }
.lmp-type-specimen { margin:0; font-weight:700; line-height:1.12; letter-spacing:-.04em; overflow-wrap:anywhere; }
.lmp-logo-panel { display:flex; flex-direction:column; justify-content:space-between; gap:1rem; padding:1.5rem; border:var(--lmp-border); border-radius:var(--lmp-radius); background:var(--lmp-paper); }
.lmp-logo-panel.lmp-dark { background:var(--lmp-ink); }
.lmp-logo-panel figure { margin:0; display:flex; align-items:center; justify-content:center; min-height:120px; }
.lmp-logo-panel img { width:100%; max-width:320px; object-fit:contain; }
.lmp-logo-panel.lmp-signet img { width:100px; }
.lmp-logo-panel p { margin:0; font-size:var(--wp--preset--font-size--small); }
.lmp-type-row.is-body .lmp-type-specimen { font-weight:400; line-height:1.65; letter-spacing:0; }
.lmp-font-note { display:flex; justify-content:space-between; flex-wrap:wrap; gap:1rem; font-size:var(--wp--preset--font-size--small); margin-block:1.5rem; }
.lmp-font-note p { margin:0; }
.lmp-demo-panel { background:var(--lmp-paper); border:var(--lmp-border); padding:var(--wp--preset--spacing--50); border-radius:var(--lmp-radius); }
.lmp-demo-panel + .lmp-demo-panel { margin-top:1rem; }
.lmp-demo-panel .wp-block-buttons { gap:var(--wp--preset--spacing--30); }
.lmp-caption { font-size:var(--wp--preset--font-size--caption); color:var(--lmp-muted); margin:0 0 1rem; font-weight:700; letter-spacing:.03em; }
.lmp-dark { background:var(--lmp-ink); color:var(--lmp-paper); }
.lmp-dark .lmp-caption { color:var(--lmp-paper); opacity:.7; }
.lmp-dark .wp-block-button__link:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-paper); --lmp-button-end:var(--lmp-paper); color:var(--lmp-ink); }
.lmp-dark .is-style-outline .wp-block-button__link:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-paper); --lmp-button-end:var(--lmp-paper); color:var(--lmp-ink); border-color:var(--lmp-paper); }
.lmp-state-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.lmp-state-grid > div { margin:0; }
.lmp-state-grid .wp-block-button__link { padding-inline:1rem; min-width:105px; }
.lmp-ci-card h3 { margin-top:0; }
.lmp-ci-card p { color:var(--lmp-muted); font-size:var(--wp--preset--font-size--small); }
.lmp-card-index { font-size:var(--wp--preset--font-size--caption); letter-spacing:.1em; font-weight:800; }
.lmp-ci-card .wp-block-buttons { margin-top:1.5rem; }
.lmp-card-accent { background:var(--lmp-gradient-yellow); border-color:var(--lmp-brand); }
.lmp-card-accent p { color:var(--lmp-ink); }
/* Yellow surfaces share an off-white button, changing gently to anthracite. */
:is(.lmp-card-accent,.lmp-service-band,.lmp-shop-bridge) .wp-block-button .wp-block-button__link {
 --lmp-button-start:var(--lmp-paper);
 --lmp-button-end:color-mix(in srgb,var(--lmp-paper) 90%,var(--lmp-canvas));
 color:var(--lmp-ink);
 border-color:transparent;
}
:is(.lmp-card-accent,.lmp-service-band,.lmp-shop-bridge) .wp-block-button .wp-block-button__link:is(:hover,:focus-visible) {
 --lmp-button-start:var(--lmp-ink);
 --lmp-button-end:var(--lmp-muted);
 color:var(--lmp-paper);
 border-color:var(--lmp-ink);
}
.lmp-space-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.25rem; }
.lmp-space-item { margin:0; }
.lmp-space-bar { height:12px; background:var(--lmp-ink); border-radius:2px; margin-bottom:1rem; }
.lmp-space-item p { margin:0; font-size:var(--wp--preset--font-size--caption); color:var(--lmp-muted); }
.lmp-space-10 .lmp-space-bar { width:var(--wp--preset--spacing--10); }
.lmp-space-20 .lmp-space-bar { width:var(--wp--preset--spacing--20); }
.lmp-space-30 .lmp-space-bar { width:var(--wp--preset--spacing--30); }
.lmp-space-40 .lmp-space-bar { width:var(--wp--preset--spacing--40); }
.lmp-space-50 .lmp-space-bar { width:var(--wp--preset--spacing--50); }
.lmp-space-60 .lmp-space-bar { width:var(--wp--preset--spacing--60); }
.lmp-space-70 .lmp-space-bar { width:var(--wp--preset--spacing--70); }
.lmp-space-80 .lmp-space-bar { width:var(--wp--preset--spacing--80); }
.lmp-alert { border:var(--lmp-border); border-left:3px solid currentColor; border-radius:var(--wp--custom--radius--field); padding:1rem 1.25rem; background:var(--lmp-paper); font-size:var(--wp--preset--font-size--small); }
.lmp-alert p { margin:0; }
.lmp-alert-success { color:var(--wp--preset--color--success); }
.lmp-alert-warning { color:var(--wp--preset--color--warning); }
.lmp-alert-error { color:var(--wp--preset--color--error); }
.lmp-motion-demo { transition:transform var(--wp--custom--motion--normal) var(--wp--custom--motion--ease),box-shadow var(--wp--custom--motion--normal) var(--wp--custom--motion--ease); }
.lmp-motion-demo:hover,.lmp-motion-demo:focus-within { transform:translateY(var(--wp--custom--motion--lift)); box-shadow:var(--wp--custom--shadow--card); }
.lmp-principle { border-top:var(--lmp-border); padding-top:1.25rem; }
.lmp-principle p { font-size:var(--wp--preset--font-size--small); color:var(--lmp-muted); }
.lmp-principle h3 { margin:0; }
.lmp-ci-closure { margin-top:var(--wp--preset--spacing--80); padding:var(--wp--preset--spacing--50); background:var(--lmp-gradient-yellow); border-radius:var(--lmp-radius); }
.lmp-ci-closure h2 { font-size:var(--wp--preset--font-size--h-3); }
.lmp-ci-closure p { margin-bottom:0; font-size:var(--wp--preset--font-size--small); }
@media (max-width:1000px) {
  .lmp-ci-layout { grid-template-columns:150px minmax(0,1fr); gap:32px; }
  .lmp-header-label { display:none; }
  .lmp-state-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
  .lmp-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lmp-swatch .lmp-swatch-color { min-height:100px !important; }
}
@media (max-width:700px) {
  .lmp-ci-layout { display:block; }
  .lmp-ci-sidebar { position:static; display:flex; gap:4px; flex-wrap:wrap; padding-bottom:2rem; }
  .lmp-ci-sidebar > p:first-child,.lmp-ci-sidebar .lmp-sidebar-note { display:none; }
  .lmp-ci-sidebar > p { margin:0; }
  .lmp-ci-sidebar a { border:var(--lmp-border); border-radius:999px; padding:.4rem .75rem; background:var(--lmp-paper); font-size:.75rem; }
  .lmp-ci-sidebar a[aria-current="location"] { background:var(--lmp-ink); color:var(--lmp-paper); }
  .lmp-type-row { grid-template-columns:58px minmax(0,1fr); padding:1.25rem 1rem; gap:.75rem; }
  .lmp-grid-two { grid-template-columns:1fr; }
  .lmp-demo-panel { padding:1.5rem; }
  .lmp-space-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lmp-header { padding-inline:1rem; }
  .lmp-header .wp-block-site-logo { width:112px; }
  .lmp-header .wp-block-button__link { font-size:.75rem; padding-inline:1rem; }
  .wp-block-search__inside-wrapper { flex-wrap:wrap; }
  .wp-block-search__button { flex-shrink:0; }
  .lmp-ci-section { margin-top:var(--wp--preset--spacing--70); }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none !important; transition:none !important; }
  .lmp-motion-demo:hover,.lmp-motion-demo:focus-within { transform:none; }
}

/* Shared content-card family: image, content and action retain one hierarchy. */
.lmp-content-card { display:flex; flex-direction:column; overflow:hidden; border:var(--lmp-border); border-radius:var(--lmp-radius); background:var(--lmp-paper); }
.lmp-content-card > figure { margin:0; overflow:hidden; }
.lmp-content-card > figure img { display:block; width:100%; aspect-ratio:3/2; object-fit:cover; }
.lmp-content-card.lmp-story-card > figure img { aspect-ratio:16/9; }
.lmp-content-card .lmp-card-body { display:flex; flex-direction:column; flex:1; gap:1rem; padding:var(--wp--preset--spacing--40); margin:0; }
.lmp-card-body > * { margin:0; }
.lmp-card-body h3 { font-size:var(--wp--preset--font-size--h-4); }
.lmp-card-body h3 a { text-decoration:none; }
.lmp-card-body h3 a:hover { text-decoration:underline; }
.lmp-card-body > p { color:var(--lmp-muted); font-size:var(--wp--preset--font-size--small); }
.lmp-card-body .wp-block-buttons { margin-top:auto; padding-top:.5rem; }
.lmp-card-body .lmp-badge { align-self:flex-start; background:var(--lmp-brand); color:var(--lmp-ink); border-radius:var(--wp--custom--radius--button); font-size:var(--wp--preset--font-size--caption); font-weight:700; padding:.3rem .7rem; }
.lmp-card-body .lmp-badge-neutral { background:var(--lmp-canvas); border:var(--lmp-border); }
.lmp-content-card:focus-within { outline:2px solid var(--lmp-ink); outline-offset:4px; }
.lmp-card-showcase { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:var(--wp--preset--spacing--50); align-items:start; margin-block:var(--wp--preset--spacing--50); }
.lmp-card-showcase > * { min-width:0; margin:0; }
.lmp-card-explanation { color:var(--lmp-muted); font-size:var(--wp--preset--font-size--small); }
.lmp-card-showcase + h3 { margin-top:var(--wp--preset--spacing--70); }
/* One compact text hierarchy for live Landwirt cards and the design-system card. */
.lmp-offer .lmp-offer-copy,
.lmp-content-card.lmp-used-card .lmp-card-body { display:flex; flex-direction:column; gap:8px; padding:16px; }
.lmp-offer .lmp-offer-copy h3,
.lmp-content-card.lmp-used-card .lmp-card-body h3 { margin:0; min-height:0; font-size:1rem; font-weight:700; line-height:1.35; letter-spacing:-.02em; }
.lmp-offer .lmp-offer-copy > p,
.lmp-content-card.lmp-used-card .lmp-card-body > p { margin:0; color:color-mix(in srgb,var(--lmp-paper) 82%,transparent); font-size:var(--wp--preset--font-size--small); font-weight:400; line-height:1.5; letter-spacing:normal; }
@media(max-width:700px) {
 .lmp-offer .lmp-offer-copy,.lmp-content-card.lmp-used-card .lmp-card-body { padding:14px; gap:6px; }
}
.lmp-handover-card { overflow:hidden; border:var(--lmp-border); border-radius:var(--lmp-radius); background:var(--lmp-ink); color:var(--lmp-paper); }
.lmp-handover-card figure { margin:0; }
.lmp-handover-card img { display:block; width:100%; height:auto; }
.lmp-handover-card figcaption { padding:var(--wp--preset--spacing--30) var(--wp--preset--spacing--40); margin:0; color:color-mix(in srgb,var(--lmp-paper) 82%,transparent); text-align:left; font-size:var(--wp--preset--font-size--small); }
.lmp-handover-card figcaption strong { display:block; color:var(--lmp-paper); font-size:var(--wp--preset--font-size--body); }
@media(max-width:700px) { .lmp-card-showcase { grid-template-columns:1fr; } }

/* Progressive enhancement: content is visible unless motion.js opts it in. */
.lmp-reveal-ready { opacity:0; transform:translateY(var(--wp--custom--motion--distance)); transition:opacity var(--wp--custom--motion--reveal) var(--wp--custom--motion--ease),transform var(--wp--custom--motion--reveal) var(--wp--custom--motion--ease); transition-delay:var(--lmp-reveal-delay,0ms); }
.lmp-reveal-ready.is-visible { opacity:1; transform:none; }
@keyframes lmp-arrive { from {opacity:0;transform:translateY(var(--wp--custom--motion--distance));} to {opacity:1;transform:none;} }
.lmp-hero-enter { animation:lmp-arrive var(--wp--custom--motion--reveal) var(--wp--custom--motion--ease) both; animation-delay:var(--lmp-reveal-delay,0ms); }
.lmp-motion-stage { padding:var(--wp--preset--spacing--50); background:var(--lmp-paper); border:var(--lmp-border); border-radius:var(--lmp-radius); overflow:hidden; }
.lmp-motion-stage > p { color:var(--lmp-muted); font-size:var(--wp--preset--font-size--small); }
.lmp-motion-stage + h3 { margin-block-start:var(--wp--preset--spacing--60); }
.lmp-cursor-playground { position:relative; isolation:isolate; overflow:hidden; min-height:320px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1rem; padding:2rem; border:var(--lmp-border); border-radius:var(--lmp-radius); background:var(--lmp-ink); color:var(--lmp-paper); }
.lmp-cursor-playground::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; opacity:0; background:radial-gradient(circle 180px at var(--lmp-pointer-x,50%) var(--lmp-pointer-y,50%),color-mix(in srgb,var(--lmp-brand) 23%,transparent),transparent 100%); transition:opacity 700ms ease; }
.lmp-cursor-playground::after { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; opacity:0; background-image:linear-gradient(color-mix(in srgb,var(--lmp-brand) 15%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--lmp-brand) 15%,transparent) 1px,transparent 1px); background-size:28px 28px; mask-image:radial-gradient(circle 160px at var(--lmp-pointer-x,50%) var(--lmp-pointer-y,50%),black,transparent); transition:opacity 700ms ease; }
.lmp-cursor-playground.is-pointer-active::before,.lmp-cursor-playground.is-pointer-active::after { opacity:1; }
.lmp-cursor-playground figure { width:110px; margin:0; transform:translate(var(--lmp-signet-x,0px),var(--lmp-signet-y,0px)); transition:transform 200ms ease-out; }
.lmp-cursor-playground p { margin:0; text-align:center; max-width:430px; font-size:var(--wp--preset--font-size--small); }
.lmp-cursor-playground .lmp-cursor-caption { color:var(--lmp-brand); font-weight:700; }
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce) { .lmp-cursor-playground::before,.lmp-cursor-playground::after { display:none; } .lmp-cursor-playground figure { transform:none; } }
.lmp-loading-demo { padding:var(--wp--preset--spacing--50); border:var(--lmp-border); border-radius:var(--lmp-radius); background:var(--lmp-paper); }
.lmp-loading-demo + h3 { margin-block-start:var(--wp--preset--spacing--60); }
/* Approved surface and button gradients, centrally derived from brand colors. */
:root {
  --lmp-gradient-light:linear-gradient(135deg,var(--lmp-paper) 0%,var(--lmp-canvas) 100%);
  --lmp-gradient-dark:linear-gradient(135deg,var(--lmp-ink) 15%,var(--lmp-muted) 100%);
  --lmp-gradient-yellow:linear-gradient(135deg,var(--lmp-brand) 0%,color-mix(in srgb,var(--lmp-brand) 90%,var(--lmp-paper)) 100%);
}
.lmp-gradient-sample { min-height:200px; padding:var(--wp--preset--spacing--50); border:var(--lmp-border); border-radius:var(--lmp-radius); display:flex; flex-direction:column; justify-content:center; background:var(--lmp-paper); }
#verlaeufe > .lmp-grid + h3 { margin-block-start:var(--wp--preset--spacing--60); }
.lmp-gradient-sample h3 { font-size:var(--wp--preset--font-size--h-4); }
.lmp-gradient-sample p { font-size:var(--wp--preset--font-size--small); margin:0; }
.lmp-gradient-sample.lmp-dark { background:var(--lmp-ink); color:var(--lmp-paper); }
.lmp-gradient-sample.is-gradient-light { background:var(--lmp-gradient-light); }
.lmp-gradient-sample.is-gradient-dark { background:var(--lmp-gradient-dark); }
.lmp-gradient-sample.is-gradient-yellow { background:var(--lmp-gradient-yellow); }
.lmp-gradient-button-demo .wp-block-button__link { --lmp-button-start:var(--lmp-brand); --lmp-button-end:color-mix(in srgb,var(--lmp-brand) 90%,var(--lmp-paper)); }
.lmp-gradient-solid-demo .wp-block-button__link { --lmp-button-start:var(--lmp-brand); --lmp-button-end:var(--lmp-brand); }
.lmp-gradient-solid-demo .wp-block-button__link:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-ink); --lmp-button-end:var(--lmp-ink); color:var(--lmp-brand); }
.lmp-gradient-button-demo .wp-block-button__link:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-ink); --lmp-button-end:var(--lmp-ink); color:var(--lmp-brand); }
.lmp-gradient-controls { display:flex; flex-wrap:wrap; gap:1rem; align-items:center; padding:1.5rem; background:var(--lmp-paper); border:var(--lmp-border); border-radius:var(--lmp-radius); margin-block:2rem; }
.lmp-gradient-controls button { min-height:48px; padding:.875rem 1.5rem; font:inherit; font-weight:700; border-radius:var(--wp--custom--radius--button); border:1px solid var(--lmp-ink); background:var(--lmp-ink); color:var(--lmp-paper); cursor:pointer; }
.lmp-gradient-controls button:hover { background:var(--lmp-brand); color:var(--lmp-ink); }
.lmp-gradient-controls p { flex-basis:100%; margin:0; color:var(--lmp-muted); font-size:var(--wp--preset--font-size--small); }
.lmp-gradient-preview .lmp-ci-hero { background:var(--lmp-gradient-light); }
.lmp-gradient-preview :is(.lmp-header,.lmp-footer,.lmp-loader-stage) { background:var(--lmp-gradient-dark); }
.lmp-gradient-preview :is(.lmp-card-accent,.lmp-ci-closure) { background:var(--lmp-gradient-yellow); }
.lmp-loader-stage { display:flex; min-height:260px; flex-direction:column; align-items:center; justify-content:center; gap:1.25rem; border-radius:var(--lmp-radius); background:var(--lmp-ink); color:var(--lmp-paper); margin-bottom:1.5rem; }
.lmp-loader-signet { width:100px; height:100px; object-fit:contain; }
.lmp-loader-track { width:100px; height:3px; border-radius:999px; overflow:hidden; background:color-mix(in srgb,var(--lmp-paper) 18%,transparent); }
.lmp-loader-track::after { content:''; display:block; width:40%; height:100%; border-radius:inherit; background:var(--lmp-brand); }
.lmp-loader-status { margin:0; font-size:var(--wp--preset--font-size--small); }
@keyframes lmp-loader-breathe { 0%,100% {opacity:.55;transform:scale(.98);} 50% {opacity:1;transform:scale(1);} }
@keyframes lmp-loader-travel { 0% {transform:translateX(-110%);} 100% {transform:translateX(360%);} }
.is-loading .lmp-loader-signet { animation:lmp-loader-breathe 1800ms ease-in-out infinite; }
.is-loading .lmp-loader-track::after { animation:lmp-loader-travel 1800ms ease-in-out infinite; }
.lmp-loader-stage:not(.is-loading) .lmp-loader-track::after { width:100%; }
.lmp-loading-preview-button { min-height:48px; border:1px solid var(--lmp-ink); border-radius:var(--wp--custom--radius--button); background:var(--lmp-ink); color:var(--lmp-paper); padding:.875rem 1.5rem; font:inherit; font-weight:700; cursor:pointer; }
.lmp-loading-preview-button:hover { background:var(--lmp-brand); color:var(--lmp-ink); }
.lmp-loading-preview-button:disabled { cursor:wait; opacity:.65; }
@media(prefers-reduced-motion:reduce) { .is-loading .lmp-loader-signet,.is-loading .lmp-loader-track::after { animation:none !important;transform:none;opacity:1; } }
.lmp-preview-tiles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--wp--preset--spacing--30); margin-block:var(--wp--preset--spacing--40); }
.lmp-preview-tile { padding:1.25rem; border:var(--lmp-border); border-radius:var(--lmp-radius); background:var(--lmp-canvas); margin:0; }
.lmp-preview-tile h3 { font-size:var(--wp--preset--font-size--h-5); letter-spacing:-.02em; margin:0; }
.lmp-preview-tile p { font-size:var(--wp--preset--font-size--small); color:var(--lmp-muted); }
.lmp-preview-number { font-size:var(--wp--preset--font-size--h-3) !important; font-weight:700; color:var(--lmp-ink) !important; margin:0 0 1rem; }
.lmp-preview-playing .lmp-preview-tile { animation:lmp-arrive var(--wp--custom--motion--reveal) var(--wp--custom--motion--ease) both; }
.lmp-preview-playing .lmp-preview-tile:nth-child(2) { animation-delay:var(--wp--custom--motion--stagger); }
.lmp-preview-playing .lmp-preview-tile:nth-child(3) { animation-delay:calc(var(--wp--custom--motion--stagger) * 2); }
.lmp-replay-motion { min-height:48px; padding:.875rem 1.5rem; border:1px solid var(--lmp-ink); border-radius:var(--wp--custom--radius--button); background:var(--lmp-ink); color:var(--lmp-paper); font:inherit; font-weight:700; cursor:pointer; transition:background var(--lmp-transition),color var(--lmp-transition); }
.lmp-replay-motion:hover { background:var(--lmp-brand); color:var(--lmp-ink); }
.lmp-motion-feedback { margin:1rem 0 0; font-size:var(--wp--preset--font-size--small); color:var(--lmp-muted); }
.lmp-hero-concept { position:relative; overflow:hidden; background:var(--lmp-ink); color:var(--lmp-paper); border-radius:var(--lmp-radius); padding:clamp(24px,5vw,56px); }
.lmp-hero-concept::after { content:''; position:absolute; width:220px; height:220px; border:1px solid color-mix(in srgb,var(--lmp-brand) 40%,transparent); border-radius:50%; top:-100px; right:-80px; pointer-events:none; }
.lmp-hero-concept h3 { font-size:var(--wp--preset--font-size--h-2); max-width:550px; }
.lmp-hero-concept > p { max-width:550px; }
.lmp-hero-concept a { color:var(--lmp-paper); }
@media(max-width:700px) { .lmp-preview-tiles { grid-template-columns:1fr; } .lmp-motion-stage { padding:1.5rem; } }
@media(prefers-reduced-motion:reduce) {
  .lmp-reveal-ready { opacity:1 !important; transform:none !important; transition:none !important; }
  .lmp-hero-enter,.lmp-preview-playing .lmp-preview-tile { animation:none !important; }
}
.lmp-form-demo { padding:var(--wp--preset--spacing--50); background:var(--lmp-paper); border:var(--lmp-border); border-radius:var(--lmp-radius); }
.lmp-form-demo fieldset { border:0; margin:0; padding:0; min-width:0; }
.lmp-form-demo legend { font-size:var(--wp--preset--font-size--h-4); font-weight:700; margin-bottom:1rem; }
.lmp-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--wp--preset--spacing--40); }
.lmp-field { display:flex; flex-direction:column; gap:.5rem; }
.lmp-field label { font-weight:700; font-size:var(--wp--preset--font-size--small); }
.lmp-field :is(input,select,textarea) { width:100%; min-height:48px; padding:.75rem 1rem; border:var(--lmp-border); border-radius:var(--wp--custom--radius--field); background:var(--lmp-canvas); color:var(--lmp-ink); font:inherit; }
.lmp-field textarea { min-height:140px; resize:vertical; }
.lmp-field :is(input,textarea)::placeholder { color:var(--lmp-muted); }
.lmp-field :is(input,select,textarea)[aria-invalid="true"] { border:2px solid var(--wp--preset--color--error); }
.lmp-field small,.lmp-form-demo small { font-size:var(--wp--preset--font-size--caption); color:var(--lmp-muted); }
.lmp-field-wide { grid-column:1/-1; }
.lmp-check { display:flex; align-items:flex-start; gap:.75rem; margin-block:1.5rem; }
.lmp-check input { width:20px; height:20px; flex-shrink:0; accent-color:var(--lmp-ink); margin-top:.25rem; }
.lmp-field-error { color:var(--wp--preset--color--error) !important; font-size:var(--wp--preset--font-size--small); }
.lmp-form-demo .wp-element-button { border:1px solid var(--lmp-ink); border-radius:var(--wp--custom--radius--button); padding:.875rem 1.5rem; font:inherit; font-weight:700; --lmp-button-start:var(--lmp-ink); --lmp-button-end:var(--lmp-ink); color:var(--lmp-paper); }
.lmp-form-demo .wp-element-button:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-brand); --lmp-button-end:var(--lmp-brand); color:var(--lmp-ink); }
.lmp-form-feedback { margin-bottom:0; font-weight:700; }
.lmp-form-feedback:empty { display:none; }
.lmp-image-overlay { position:relative; overflow:hidden; border-radius:var(--lmp-radius); background:var(--lmp-ink); min-height:320px; display:flex; align-items:flex-end; }
.lmp-image-overlay figure { position:absolute; inset:0; margin:0; }
.lmp-image-overlay figure img { width:100%; height:100%; object-fit:cover; }
.lmp-image-overlay::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,color-mix(in srgb,var(--lmp-ink) 96%,transparent),color-mix(in srgb,var(--lmp-ink) 60%,transparent) 55%,color-mix(in srgb,var(--lmp-ink) 5%,transparent)); pointer-events:none; }
.lmp-image-overlay .lmp-overlay-copy { position:relative; z-index:1; padding:2rem; color:var(--lmp-paper); max-width:600px; }
.lmp-overlay-copy h3 { font-size:var(--wp--preset--font-size--h-3); }
.lmp-overlay-copy p { margin-bottom:0; }
.lmp-texture { border:var(--lmp-border); border-radius:var(--lmp-radius); padding:2rem; background-color:var(--lmp-canvas); }
.lmp-texture-grid { background-image:linear-gradient(color-mix(in srgb,var(--lmp-ink) 6%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--lmp-ink) 6%,transparent) 1px,transparent 1px); background-size:24px 24px; }
.lmp-texture-dot { background-image:radial-gradient(color-mix(in srgb,var(--lmp-ink) 13%,transparent) .7px,transparent .7px); background-size:8px 8px; }
.lmp-texture h3 { font-size:var(--wp--preset--font-size--h-4); }
.lmp-icon-row { display:flex; gap:1rem; flex-wrap:wrap; margin-block:1.5rem; }
.lmp-icon-button { display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; padding:12px; border:1px solid var(--lmp-ink); border-radius:50%; background:var(--lmp-paper); color:var(--lmp-ink); cursor:pointer; transition:background var(--lmp-transition),color var(--lmp-transition); }
.lmp-icon-button:hover { background:var(--lmp-ink); color:var(--lmp-paper); }
.lmp-icon-button svg,.lmp-icon-link svg { width:22px; height:22px; flex-shrink:0; }
.lmp-icon-link { display:inline-flex; gap:.6rem; align-items:center; }
.lmp-navigation-demo { padding:1.5rem; background:var(--lmp-paper); border:var(--lmp-border); border-radius:var(--lmp-radius); }
.lmp-navigation-demo p { margin-block:.5rem; }
@media (max-width:700px) { .lmp-grid:has(> .lmp-content-card),.lmp-form-grid { grid-template-columns:1fr; } .lmp-form-demo { padding:1.5rem; } .lmp-image-overlay .lmp-overlay-copy { padding:1.5rem; } }

/* Shared contact-form component. Used unchanged by every synced pattern instance. */
/* Shared brand backdrop: page heroes and footer, never the contact panel. */
:is(.lmp-page-intro,.lmp-ci-hero,.lmp-site-footer) {
 position:relative;
 isolation:isolate;
 overflow:hidden;
 --lmp-signet-size:clamp(340px,44vw,540px);
 --lmp-signet-right:-70px;
 --lmp-signet-bottom:-175px;
 --lmp-signet-opacity:.12;
}
:is(.lmp-page-intro,.lmp-ci-hero,.lmp-site-footer)::after {
 content:'';
 position:absolute;
 z-index:-1;
 pointer-events:none;
 width:var(--lmp-signet-size);
 aspect-ratio:1;
 right:var(--lmp-signet-right);
 bottom:var(--lmp-signet-bottom);
 background:var(--lmp-brand);
 opacity:var(--lmp-signet-opacity);
 -webkit-mask:url('brand/pruckner-signet.png') center / contain no-repeat;
 mask:url('brand/pruckner-signet.png') center / contain no-repeat;
}
.lmp-site-footer {
 --lmp-signet-size:clamp(420px,48vw,640px);
 --lmp-signet-right:-100px;
 --lmp-signet-bottom:-210px;
 --lmp-signet-opacity:.18;
}
@media(max-width:700px) {
 :is(.lmp-page-intro,.lmp-ci-hero) {
  --lmp-signet-size:280px;
  --lmp-signet-right:-90px;
  --lmp-signet-bottom:-130px;
  --lmp-signet-opacity:.07;
 }
 .lmp-site-footer {
  --lmp-signet-size:340px;
  --lmp-signet-right:-100px;
  --lmp-signet-bottom:-135px;
  --lmp-signet-opacity:.1;
 }
}
/* Small original manufacturer logos, shared by category and configurator cards. */
.lmp-brand-marks { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-block:20px 0; }
.lmp-brand-mark-link { display:flex; flex-direction:column; align-items:center; gap:8px; width:100%; color:inherit; text-decoration:none; border-radius:8px; }
.lmp-brand-mark-link:hover { color:var(--lmp-ink); text-decoration:underline; text-underline-offset:4px; }
.lmp-back-top { position:fixed; right:24px; bottom:max(24px,env(safe-area-inset-bottom)); z-index:40; width:48px; height:48px; display:grid; place-items:center; padding:0; border:1px solid var(--lmp-line); border-radius:50%; background:var(--lmp-ink); color:var(--lmp-paper); box-shadow:0 6px 22px #20221f26; cursor:pointer; transition:background-color .3s,color .3s,transform .3s; }
.lmp-back-top[hidden] { display:none; }
.lmp-back-top:hover { background:var(--lmp-brand); color:var(--lmp-ink); transform:translateY(-3px); }
.lmp-back-top:focus-visible,.lmp-brand-mark-link:focus-visible { outline:3px solid var(--lmp-brand); outline-offset:4px; }
.lmp-faq-list { max-width:900px; }
.lmp-faq-list .wp-block-details { border-bottom:1px solid var(--lmp-line); border-top:0; margin-block:0; padding-block:22px; }
.lmp-faq-list summary { line-height:1.45; padding-right:16px; }
.lmp-faq-list .wp-block-details p { margin-top:16px; line-height:1.75; }
@media(prefers-reduced-motion:reduce) { .lmp-back-top { transition:none; } }
.lmp-brand-mark { display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:8px; width:104px; padding:8px; box-sizing:border-box; border-radius:8px; background:var(--lmp-paper); }
.lmp-brand-mark-image { display:flex; align-items:center; justify-content:center; width:100%; height:48px; }
.lmp-brand-mark img { display:block; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; filter:grayscale(1); }
.lmp-brand-mark-name { display:block; width:100%; min-height:2.6em; font-size:.8125rem; font-weight:500; line-height:1.3; color:var(--lmp-muted); text-align:center; overflow-wrap:anywhere; }
.lmp-logo-set img { filter:grayscale(1); }
@media(max-width:700px) { .lmp-brand-marks { gap:8px; } .lmp-brand-mark { width:92px; } .lmp-brand-mark-image { height:44px; } }
/* Shared personal contact panel: editable portrait with a restrained breakout. */
.lmp-rentals .lmp-document-table tbody th { width:42%; }
.lmp-rental-device { display:flex; align-items:center; gap:20px; min-width:250px; }
.lmp-rental-image { flex:0 0 96px; width:96px; height:96px; display:grid; place-items:center; background:var(--lmp-paper); border-radius:10px; overflow:hidden; }
.lmp-rental-image img { width:100%; height:100%; object-fit:contain; }
.lmp-rental-image span { font-size:.75rem; color:var(--lmp-muted); }
.lmp-rental-name { display:block; line-height:1.4; }
.lmp-rental-price { display:block; font-size:1rem; font-weight:650; white-space:nowrap; }
.lmp-rental-details { font-size:.875rem; font-weight:400; margin-top:8px; padding:0; border:0; }
.lmp-rental-details summary { font-weight:500; color:var(--lmp-muted); }
.lmp-rental-details p { white-space:normal; max-width:440px; line-height:1.65; }
@media(max-width:650px) { .lmp-rentals .lmp-document-table tbody th { width:auto; } .lmp-rental-device { min-width:0; align-items:flex-start; gap:14px; } .lmp-rental-image { flex-basis:76px; width:76px; height:76px; } }
.lmp-contact-panel.lmp-contact-panel-with-person {
 overflow:visible;
 min-height:360px;
 box-sizing:border-box;
 margin-top:48px;
}
.lmp-contact-panel-with-person::before { border-radius:inherit; }
.lmp-contact-panel .lmp-contact-copy { position:relative; z-index:1; display:flex; flex-direction:column; align-items:flex-start; gap:20px; width:64%; margin:0; }
.lmp-contact-panel .lmp-contact-copy > * { margin:0; }
.lmp-contact-panel .lmp-contact-copy > .lmp-eyebrow { color:var(--lmp-brand); }
.lmp-contact-panel .lmp-contact-copy > p:not(.lmp-eyebrow) { color:color-mix(in srgb,var(--lmp-paper) 87%,transparent); }
.lmp-contact-panel .lmp-contact-copy .wp-block-buttons { margin-top:8px; }
.lmp-contact-panel .lmp-contact-portrait { position:absolute; right:24px; bottom:0; width:32%; height:calc(100% + 48px); margin:0; pointer-events:none; }
.lmp-contact-portrait img { display:block; width:100%; height:100%; object-fit:contain; object-position:center bottom; filter:drop-shadow(-12px 4px 20px rgb(0 0 0 / .12)); }
@media(max-width:780px) {
 .lmp-contact-panel.lmp-contact-panel-with-person { margin-top:0; padding-bottom:0; }
 .lmp-contact-panel .lmp-contact-copy { width:100%; }
 .lmp-contact-panel .lmp-contact-portrait { position:relative; right:auto; bottom:auto; width:min(260px,85%); height:auto; margin:28px auto 0; }
 .lmp-contact-portrait img { height:auto; }
}
/* Shop parcel: a short arrival, then an interactive, softly tilted link. */
.lmp-promo-package > a { display:block; border-radius:24px; cursor:pointer; transform:perspective(850px) rotateX(var(--lmp-package-rx,0deg)) rotateY(var(--lmp-package-ry,0deg)) translate3d(var(--lmp-package-x,0px),var(--lmp-package-y,0px),0); transition:transform 550ms ease-out; }
.lmp-promo-package > a:focus-visible { outline:2px solid var(--lmp-brand); outline-offset:10px; }
.lmp-promo-package > a img { transition:filter 420ms ease; }
.lmp-package-demo { max-width:440px; padding:48px; margin-top:24px; border-radius:var(--lmp-radius); background:var(--lmp-gradient-dark); }
.lmp-package-demo .lmp-promo-package { display:block; }
.lmp-promo-hero .lmp-promo-package { --lmp-package-start-y:calc(-100vh - var(--lmp-header-height,160px)); }
@media(prefers-reduced-motion:no-preference) {
 .lmp-promo-package.is-package-ready { animation:lmp-package-arrive 1600ms cubic-bezier(.25,.65,.3,1) 250ms both; }
 .lmp-promo-package.is-package-ready img { animation:lmp-package-settle 3000ms ease-in-out 1850ms 3; }
}
@keyframes lmp-package-arrive {
 from { opacity:1; transform:translate3d(0,var(--lmp-package-start-y,-140px),0) rotate(-14deg); }
 to { opacity:1; transform:translate3d(0,0,0) rotate(-6deg); }
}
@keyframes lmp-package-settle {
 0%,100% { transform:translateY(0) rotate(0deg); }
 45% { transform:translateY(-10px) rotate(1.5deg); }
}
@media(prefers-reduced-motion:reduce) {
 .lmp-promo-package > a { transform:none; transition:none; }
}
.lmp-contact-form { background:var(--lmp-canvas); padding:28px; margin:0; }
.lmp-contact-form legend { font-size:1.125rem; }
.lmp-contact-form .lmp-form-notice { margin:0 0 24px; font-size:.8125rem; color:var(--lmp-muted); border-left:3px solid var(--lmp-brand); padding-left:12px; }
.lmp-contact-form .lmp-field :is(input,textarea) { background:var(--lmp-paper); }
.lmp-contact-form button { margin-top:24px; }
.lmp-contact-form .lmp-form-feedback { margin-top:16px; }
@media(max-width:700px) { .lmp-contact-form { padding:20px; } }

/* One active-navigation state for the shared header, including its utility links. */
.lmp-site-header .lmp-site-navigation .wp-block-navigation__submenu-container { background:var(--lmp-ink); color:var(--lmp-paper); border:1px solid color-mix(in srgb,var(--lmp-paper) 20%,transparent); border-radius:12px; padding:8px; min-width:190px; box-shadow:0 12px 30px rgb(0 0 0 / .18); }
.lmp-site-header .lmp-site-navigation .wp-block-navigation__submenu-container a { color:var(--lmp-paper); padding:12px 16px; font-size:14px; line-height:1.4; text-decoration:none; border-radius:6px; }
.lmp-site-header .lmp-site-navigation .wp-block-navigation__submenu-container a:is(:hover,:focus-visible) { color:var(--lmp-brand); background:color-mix(in srgb,var(--lmp-paper) 7%,var(--lmp-ink)); }
.lmp-site-header .lmp-site-navigation .wp-block-navigation__submenu-icon { color:inherit; min-width:24px; min-height:32px; }
.lmp-site-header .lmp-site-navigation .is-menu-open .wp-block-navigation__submenu-container { background:transparent; border:0; border-radius:0; box-shadow:none; padding:0 0 8px; min-width:0; align-items:center; }
.lmp-site-header .lmp-site-navigation .is-menu-open .wp-block-navigation__submenu-container a.wp-block-navigation-item__content { font-size:18px; min-height:44px; }
.lmp-site-header a.lmp-nav-current,
.lmp-site-header .lmp-site-navigation a.lmp-nav-current {
  color:var(--lmp-brand);
  font-weight:750;
  text-decoration-line:underline;
  text-decoration-color:var(--lmp-brand);
  text-decoration-thickness:2px;
  text-underline-offset:.55em;
}
.lmp-site-header .is-menu-open a.lmp-nav-current {
  color:var(--lmp-brand);
  background:transparent;
  padding-inline:0;
}

/* Shared mobile navigation overlay; the WordPress menu retains its focus trap and Escape key. */
.lmp-site-header .wp-block-navigation.lmp-site-navigation .wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay) {
  background:var(--lmp-gradient-dark) !important;
  color:var(--lmp-paper);
  padding:24px;
  padding: max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));
  min-height:100vh;
  min-height:100dvh;
}
body.admin-bar .lmp-site-header .wp-block-navigation.lmp-site-navigation .wp-block-navigation__responsive-container.is-menu-open {
  padding-top:calc(max(24px,env(safe-area-inset-top)) + 46px);
}
@media(min-width:783px) {
  body.admin-bar .lmp-site-header .wp-block-navigation.lmp-site-navigation .wp-block-navigation__responsive-container.is-menu-open {
    padding-top:calc(max(24px,env(safe-area-inset-top)) + 32px);
  }
}
.lmp-site-header .lmp-site-navigation .is-menu-open .wp-block-navigation__responsive-close {
  display:flex;
  flex:1;
  width:100%;
}
.lmp-site-header .wp-block-navigation.lmp-site-navigation .is-menu-open .wp-block-navigation__responsive-dialog {
  display:flex;
  flex-direction:column;
  flex:1;
  width:100%;
  margin-top:0;
}
.lmp-site-header .lmp-site-navigation .is-menu-open .wp-block-navigation__responsive-container-content {
  display:flex;
  flex:1;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  width:100%;
  padding:72px 0;
  min-height:min-content;
}
.lmp-site-header .lmp-site-navigation .is-menu-open .wp-block-navigation__container {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:clamp(10px,2.5vh,24px);
  width:100%;
  text-align:center;
}
.lmp-site-header .lmp-site-navigation .is-menu-open .wp-block-navigation-item {
  width:100%;
  align-items:center;
  justify-content:center;
}
.lmp-site-header .lmp-site-navigation .is-menu-open a.wp-block-navigation-item__content {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:8px 12px;
  max-width:100%;
  color:var(--lmp-paper);
  font-size:clamp(21px,3vw,30px);
  font-weight:650;
  line-height:1.35;
  text-align:center;
  overflow-wrap:anywhere;
}
.lmp-site-header .lmp-site-navigation .is-menu-open a.wp-block-navigation-item__content:is(:hover,:focus-visible),
.lmp-site-header .lmp-site-navigation .is-menu-open a.lmp-nav-current {
  color:var(--lmp-brand);
}
.lmp-site-header .lmp-site-navigation .is-menu-open a.lmp-nav-current {
  font-weight:750;
  background:transparent;
}
.lmp-site-header .lmp-site-navigation .is-menu-open .wp-block-navigation__responsive-container-close {
  position:absolute;
  inset:0 0 auto auto;
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  border:1px solid color-mix(in srgb,var(--lmp-paper) 30%,transparent);
  border-radius:var(--wp--custom--radius--field);
  color:var(--lmp-paper);
  background:transparent;
  z-index:2;
}
.lmp-site-header .lmp-site-navigation .wp-block-navigation__responsive-container-open {
  min-width:44px;
  min-height:44px;
  align-items:center;
  justify-content:center;
}
@media(max-height:600px) {
  .lmp-site-header .lmp-site-navigation .is-menu-open .wp-block-navigation__responsive-container-content {
    padding-block:48px 16px;
  }
  .lmp-site-header .lmp-site-navigation .is-menu-open .wp-block-navigation__container { gap:4px; }
}

/* Team cards, history and video use the same shared component styles in the guide and website. */
.lmp-team-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px; }
.lmp-team-grid > * { min-width:0; margin:0; }
.lmp-team-card { display:flex; flex-direction:column; overflow:hidden; background:var(--lmp-gradient-dark); color:var(--lmp-paper); border:var(--lmp-border); border-radius:var(--lmp-radius); }
.lmp-team-card > figure { margin:0; }
.lmp-team-card > figure img { display:block; width:100%; aspect-ratio:1; object-fit:cover; object-position:center 24%; }
.lmp-team-card-body { padding:16px; display:flex; flex-direction:column; flex:1; gap:8px; }
.lmp-team-card-body > * { margin:0; }
.lmp-team-card-body h3 { color:var(--lmp-paper); font-size:clamp(16px,1.4vw,18px); line-height:1.25; letter-spacing:-.025em; }
.lmp-team-role { font-size:.8125rem; line-height:1.45; color:var(--lmp-paper); }
.lmp-team-qualification { font-size:.75rem; line-height:1.4; color:color-mix(in srgb,var(--lmp-paper) 78%,transparent); }
.lmp-team-contact { border-top:1px solid color-mix(in srgb,var(--lmp-paper) 22%,transparent); padding-top:10px; margin-top:auto; display:flex; flex-direction:column; gap:6px; }
.lmp-team-contact > p { margin:0; line-height:1.35; }
.lmp-team-contact a { color:var(--lmp-paper); text-decoration:none; font-size:.75rem; overflow-wrap:anywhere; }
.lmp-team-contact a:hover { text-decoration:underline; }
.lmp-team-section { position:relative; isolation:isolate; background:var(--lmp-gradient-light); }
.lmp-team-section::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(color-mix(in srgb,var(--lmp-ink) 9%,transparent) .7px,transparent .7px) 0 0/10px 10px; mask-image:linear-gradient(110deg,transparent,black); }
.lmp-company-video-section .lmp-site-split { align-items:center; }
.lmp-company-video-copy h2 { font-size:clamp(28px,3vw,40px); margin:16px 0 24px; }
.lmp-company-video-copy p { line-height:1.7; }
.lmp-video-stage { position:relative; isolation:isolate; aspect-ratio:16/9; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; padding:24px; overflow:hidden; border-radius:var(--lmp-radius); background:var(--lmp-gradient-dark); color:var(--lmp-paper); text-align:center; }
.lmp-video-stage::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(color-mix(in srgb,var(--lmp-paper) 15%,transparent) .8px,transparent .8px) 0 0/10px 10px; }
.lmp-video-stage strong { display:block; font-size:1.25rem; }
.lmp-video-stage small { display:block; max-width:350px; font-size:.75rem; line-height:1.5; }
.lmp-video-stage button { border:0; border-radius:var(--wp--custom--radius--button); padding:14px 24px; color:var(--lmp-ink); font:inherit; font-weight:700; cursor:pointer; }
.lmp-video-stage button:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-paper); --lmp-button-end:var(--lmp-paper); }
.lmp-video-stage button::before { content:'▶'; padding-right:10px; }
.lmp-video-stage.is-loaded { display:block; padding:0; }
.lmp-video-stage.is-loaded::before { display:none; }
.lmp-video-stage iframe { display:block; width:100%; height:100%; border:0; }
.lmp-video-stage.has-local-poster { justify-content:flex-end; padding:16px; }
.lmp-video-stage.has-local-poster::before { display:none; }
.lmp-video-poster { position:absolute; inset:0; z-index:-1; display:block; width:100%; height:100%; object-fit:contain; }
.lmp-video-stage.has-local-poster button { box-shadow:0 3px 18px #20221f30; }
.lmp-video-stage.has-local-poster.is-loaded { padding:0; }
.lmp-video-note { margin-top:12px; font-size:.75rem; color:var(--lmp-muted); }
.lmp-history-list { margin-top:32px; border-top:var(--lmp-border); }
.lmp-history-entry { border-bottom:var(--lmp-border); padding:0; }
.lmp-history-entry summary { padding:22px 8px; cursor:pointer; font-weight:650; font-size:1.0625rem; line-height:1.5; }
.lmp-history-entry summary strong { display:inline-block; margin-right:20px; font-size:.875rem; color:var(--lmp-muted); font-variant-numeric:tabular-nums; }
.lmp-history-entry[open] summary { color:var(--lmp-ink); }
.lmp-history-entry[open] summary strong { color:var(--lmp-ink); background:var(--lmp-brand); border-radius:4px; padding:2px 6px; margin-left:-6px; margin-right:14px; }
.lmp-history-content { display:grid; grid-template-columns:minmax(220px,.65fr) 1.35fr; gap:32px; padding:4px 8px 28px; align-items:start; }
.lmp-history-content > * { margin:0; min-width:0; }
.lmp-history-content figure img { display:block; width:100%; height:auto; border-radius:var(--wp--custom--radius--field); }
.lmp-history-copy { font-size:.9375rem; line-height:1.7; }
.lmp-history-copy > :first-child { margin-top:0; }
.lmp-history-copy > :last-child { margin-bottom:0; }
.lmp-guide-team-demo { margin-top:24px; }
.lmp-guide-team-demo > summary { font-weight:700; cursor:pointer; padding:16px 0; }
.lmp-guide-team-demo .lmp-team-grid { grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:16px; }
@media(max-width:1200px) { .lmp-team-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:1000px) { .lmp-team-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:700px) { .lmp-team-grid,.lmp-guide-team-demo .lmp-team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; } .lmp-team-card-body { padding:16px; } .lmp-team-contact a { font-size:.75rem; } .lmp-history-content { grid-template-columns:1fr; gap:20px; } .lmp-history-content figure { max-width:400px; } .lmp-history-entry summary strong { margin-right:10px; } .lmp-company-video-section .lmp-site-split { grid-template-columns:1fr; } }
@media(max-width:360px) { .lmp-team-grid,.lmp-guide-team-demo .lmp-team-grid { grid-template-columns:1fr; } .lmp-team-card > figure img { max-height:280px; } }

/* Dynamic content uses the existing card, logo and gallery classes above. */
.lmp-logo-set > figure > a { display:flex; align-items:center; justify-content:center; width:100%; height:100%; }
.lmp-job-card { border:var(--lmp-border); border-radius:var(--lmp-radius); background:var(--lmp-paper); margin-block:16px; overflow:hidden; }
.lmp-job-card summary { padding:24px; cursor:pointer; font-size:1.125rem; }
.lmp-job-card summary strong { line-height:1.4; }
.lmp-job-card summary span { display:block; font-size:.875rem; margin-top:8px; color:var(--lmp-muted); }
.lmp-job-body { padding:0 24px 24px; line-height:1.7; }
.lmp-content-pagination ul { list-style:none; padding:0; display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:32px; }
.lmp-content-pagination a,.lmp-content-pagination .current { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:8px 12px; border:var(--lmp-border); border-radius:var(--wp--custom--radius--field); color:var(--lmp-ink); text-decoration:none; }
.lmp-content-pagination .current { background:var(--lmp-brand); font-weight:700; }

.lmp-card-symbol,
.lmp-card-inspection {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}
.lmp-card-symbol::before,
.lmp-card-inspection::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: clamp(160px, 40%, 220px);
  aspect-ratio: 1;
  right: -20px;
  bottom: -32px;
  opacity: .045;
  pointer-events: none;
  background: var(--lmp-service-symbol) center / contain no-repeat;
  mask-image: linear-gradient(135deg, transparent 8%, #000 70%);
}
.lmp-card-inspection { --lmp-service-symbol:url("./icons/inspection-check.svg"); }
.lmp-card-servicevan { --lmp-service-symbol:url("./icons/service-van.svg"); }
.lmp-card-hydraulics { --lmp-service-symbol:url("./icons/hydraulic-hose.svg"); }
.lmp-card-dynamometer { --lmp-service-symbol:url("./icons/power-gauge.svg"); }
.lmp-card-climate { --lmp-service-symbol:url("./icons/climate-service.svg"); }
.lmp-card-paint { --lmp-service-symbol:url("./icons/paint-spray.svg"); }
.lmp-team-card[id],.lmp-handover-card[id] { scroll-margin-top:160px; }

/* Shared document availability and edition links: table, model page and CI. */
.lmp-document-description { display:block; font-size:.875rem; font-weight:400; color:var(--lmp-muted); margin-top:6px; }
.lmp-document-shop-state { min-width:0; overflow-wrap:anywhere; }
.lmp-document-table .lmp-document-shop-state a,.lmp-document-table tbody th a { white-space:normal; }
.lmp-document-editions summary { cursor:pointer; font-size:.875rem; font-weight:650; }
.lmp-document-editions ul { padding-inline-start:1.2rem; }
.lmp-document-editions li + li { margin-top:.75rem; }
.lmp-card-phone { --lmp-service-symbol:url("./icons/contact-phone.svg"); }
.lmp-card-wrench { --lmp-service-symbol:url("./icons/contact-wrench.svg"); }
.lmp-card-store { --lmp-service-symbol:url("./icons/contact-store.svg"); }
.lmp-card-clock { --lmp-service-symbol:url("./icons/opening-clock.svg"); }
.lmp-hours-card:not(.lmp-hours-card-light).lmp-card-symbol::before { filter:brightness(0) invert(1); }

.lmp-workshop-contact .lmp-workshop-contact-layout {
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
  gap:clamp(24px,5vw,64px); align-items:end; padding-bottom:0;
}
.lmp-workshop-contact-copy { min-width:0; padding-bottom:48px; }
.lmp-workshop-contact-copy h2 { margin-top:16px; }
.lmp-workshop-contact-copy p:not(.lmp-eyebrow) { max-width:65ch; }
.lmp-workshop-contact-copy .wp-block-buttons { margin-top:24px; }
.lmp-workshop-contact-portrait { margin:0; justify-self:center; align-self:end; }
.lmp-workshop-contact-portrait img { display:block; width:auto; max-width:100%; height:460px; object-fit:contain; object-position:center bottom; }
.lmp-workshop-team { display:flex; align-items:flex-end; min-width:0; width:100%; margin:0; gap:0; }
.lmp-workshop-team > .wp-block-image { flex:0 0 51%; min-width:0; margin:0 0 0 -26.5%; position:relative; aspect-ratio:2/3; }
.lmp-workshop-team > .wp-block-image:first-child { margin-left:0; z-index:2; --lmp-person-scale:.96; }
.lmp-workshop-team > .wp-block-image:nth-child(2) { z-index:3; }
.lmp-workshop-team > .wp-block-image:nth-child(3) { z-index:1; --lmp-person-scale:1.12; }
.lmp-workshop-team img { display:block; position:absolute; bottom:0; left:0; width:100%; height:auto; border-radius:0; transform:scale(var(--lmp-person-scale,1)); transform-origin:center bottom; }
@media(max-width:760px) {
  .lmp-workshop-contact .lmp-workshop-contact-layout { grid-template-columns:1fr; gap:0; }
  .lmp-workshop-contact-copy { padding-bottom:16px; }
  .lmp-workshop-contact-portrait img { height:320px; }
  .lmp-workshop-team { max-width:560px; justify-self:center; }
}
