/* Public prototype: reuses the established palette, component and motion tokens. */
.lmp-site-main { padding:0; }
.lmp-site-main > .entry-content { margin:0; }
.lmp-site-width { width:min(100% - 48px,1280px); margin-inline:auto; }
.lmp-site-header { background:var(--lmp-gradient-dark); color:var(--lmp-paper); padding:0; }
.wp-site-blocks > header:has(.lmp-site-header) { position:sticky; top:var(--lmp-admin-offset,0px); z-index:1000; margin-top:0; box-shadow:0 6px 24px color-mix(in srgb,var(--lmp-ink) 12%,transparent); }
html:has(body.admin-bar) { --lmp-admin-offset:32px; }
html { scroll-padding-top:calc(var(--lmp-header-height,160px) + var(--lmp-admin-offset,0px) + 20px); }
@media (max-width:782px) { html:has(body.admin-bar) { --lmp-admin-offset:46px; } }
@media (max-width:600px) { html:has(body.admin-bar) { --lmp-admin-offset:0px; } }
.lmp-site-utility { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding-block:10px; border-bottom:1px solid color-mix(in srgb,var(--lmp-paper) 18%,transparent); font-size:var(--wp--preset--font-size--caption); }
.lmp-site-utility p { margin:0; }
.lmp-site-header a { color:inherit; }
.lmp-site-header-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:100px; padding-block:20px; }
.lmp-site-header-inner > * { margin:0; }
.lmp-site-header .wp-block-site-logo { width:150px; flex-shrink:0; }
.lmp-site-header .wp-block-navigation { font-size:.8125rem; font-weight:600; }
.lmp-site-header .wp-block-navigation__container { gap:20px; }
.lmp-site-header .wp-block-navigation-item__content { text-decoration:none; padding-block:.5rem; }
.lmp-site-header .wp-block-navigation-item__content:hover { color:var(--lmp-brand); }
.lmp-site-header .wp-block-button__link { font-size:.8125rem; min-height:44px; white-space:nowrap; }
.lmp-site-header .wp-block-button { color:var(--lmp-ink); }
.lmp-site-hero { background:var(--lmp-gradient-light); overflow:hidden; }
.lmp-site-hero-inner { display:grid; grid-template-columns:1fr 1.1fr; gap:40px; align-items:center; padding-block:clamp(56px,7vw,104px); }
.lmp-site-hero-inner > * { min-width:0; margin:0; }
.lmp-hero-copy h1 { font-size:clamp(44px,5.5vw,76px); line-height:1.02; max-width:680px; margin-block:20px 24px; }
.lmp-hero-copy > p:not(.lmp-eyebrow) { color:var(--lmp-muted); max-width:540px; font-size:var(--wp--preset--font-size--lead); }
.lmp-eyebrow { font-size:var(--wp--preset--font-size--caption); letter-spacing:.12em; text-transform:uppercase; font-weight:800; margin:0; }
.lmp-hero-copy .wp-block-buttons { margin-top:32px; gap:12px; }
.lmp-hero-media { position:relative; padding:32px 0; }
.lmp-hero-media::before { content:''; position:absolute; inset:4% 8%; border:1px solid var(--lmp-line); border-radius:50%; transform:rotate(-12deg); }
.lmp-hero-media figure { position:relative; z-index:1; margin:0; }
.lmp-hero-media img { width:100%; display:block; }
.lmp-hero-media > p { margin:24px 0 0; font-size:var(--wp--preset--font-size--caption); color:var(--lmp-muted); text-align:right; }
.lmp-route-strip { background:var(--lmp-ink); color:var(--lmp-paper); }
.lmp-route-strip .lmp-site-width { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; }
.lmp-route-strip p { margin:0; border-right:1px solid color-mix(in srgb,var(--lmp-paper) 18%,transparent); }
.lmp-route-strip p:last-child { border:0; }
.lmp-route-strip a { color:inherit; display:block; padding:22px 24px; font-size:var(--wp--preset--font-size--small); text-decoration:none; }
.lmp-route-strip a:hover { color:var(--lmp-brand); }
.lmp-site-section { padding-block:clamp(56px,7vw,96px); margin-block:0; }
.lmp-site-section > .lmp-eyebrow { margin-bottom:16px; }
.lmp-site-section > h2 { max-width:800px; margin-bottom:24px; }
.lmp-site-section > .lmp-section-intro { max-width:720px; color:var(--lmp-muted); margin-bottom:40px; }
.lmp-site-section > .lmp-grid { margin-top:32px; }
.lmp-site-section + .lmp-site-section { border-top:var(--lmp-border); }
.lmp-site-section > .wp-block-buttons { margin-top:32px; }
.lmp-site-section .lmp-content-card h3 { font-size:var(--wp--preset--font-size--h-4); }
.lmp-section-shell { background:var(--lmp-paper); }
.lmp-section-shell-dark { background:var(--lmp-gradient-dark); color:var(--lmp-paper); }
.lmp-section-shell-dark a { color:inherit; }
.lmp-site-split { display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,5vw,72px); align-items:center; }
.lmp-site-split > * { min-width:0; margin:0; }
.lmp-site-split figure img { display:block; width:100%; border-radius:var(--lmp-radius); }
.lmp-site-split h2 { margin-top:18px; }
.lmp-site-split p:not(.lmp-eyebrow) { color:var(--lmp-muted); }
.lmp-section-shell-dark .lmp-site-split p { color:inherit; }
.lmp-site-split .wp-block-buttons { margin-top:24px; }
.lmp-editorial-section { padding-block:56px; }
.lmp-editorial-split { gap:clamp(32px,4vw,56px); align-items:center; }
.lmp-editorial-copy > .lmp-eyebrow { margin:0 0 16px; }
.lmp-editorial-copy h2 { font-size:clamp(30px,3.4vw,42px); line-height:1.14; margin:0 0 20px; }
.lmp-editorial-copy > p:not(.lmp-eyebrow) { margin:0 0 16px; line-height:1.6; }
.lmp-editorial-copy > :last-child { margin-bottom:0; }
.lmp-editorial-split > figure img { width:100%; height:360px; object-fit:cover; object-position:center; }
.lmp-editorial-company .lmp-editorial-split > figure img { height:380px; object-position:center 55%; }
@media (max-width:800px) {
 .lmp-editorial-split { grid-template-columns:1fr; gap:28px; }
 .lmp-editorial-copy { order:0; }
 .lmp-editorial-split > figure { order:1; }
 .lmp-editorial-section { padding-block:40px; }
 .lmp-editorial-split > figure img,.lmp-editorial-company .lmp-editorial-split > figure img { height:280px; }
}
.lmp-shop-bridge { background:var(--lmp-gradient-yellow); padding:clamp(32px,5vw,64px); border-radius:var(--lmp-radius); }
.lmp-shop-bridge h2 { max-width:750px; }
.lmp-shop-bridge p { max-width:700px; }
.lmp-shop-bridge .wp-block-buttons { margin-top:24px; }
.lmp-shop-bridge .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-page-intro { padding-block:40px 44px; background:var(--lmp-gradient-light); }
.lmp-page-intro h1 { max-width:900px; margin-block:16px 20px; }
.lmp-page-intro p:not(.lmp-eyebrow):not(.lmp-breadcrumb) { max-width:720px; font-size:var(--wp--preset--font-size--lead); color:var(--lmp-muted); }
.lmp-page-intro .wp-block-buttons { margin-top:24px; }
.lmp-page-intro .lmp-breadcrumb { color:var(--lmp-muted); font-size:13px; line-height:1.5; margin:0 0 16px; }
.lmp-page-intro .lmp-breadcrumb + .lmp-eyebrow { margin-top:0; }
.lmp-site-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.lmp-site-gallery > * { margin:0; min-width:0; }
.lmp-site-gallery img { aspect-ratio:3/2; object-fit:cover; }
.lmp-site-gallery .lmp-handover-card { align-self:start; }
.lmp-site-brand-list { display:flex; flex-wrap:wrap; gap:12px 32px; margin-block:28px 0; }
.lmp-grid.lmp-brand-category-list { grid-template-columns:minmax(0,1fr); gap:16px; }
.lmp-brand-category-list > .is-style-lmp-card { display:grid; grid-template-columns:180px minmax(0,1fr); align-items:center; gap:24px; padding:24px 32px; }
.lmp-brand-category-list > .is-style-lmp-card > h3 { margin:0; }
.lmp-brand-category-list .lmp-brand-marks { margin:0; }
@media(max-width:1000px) {
 .lmp-brand-category-list > .is-style-lmp-card { grid-template-columns:minmax(0,1fr); gap:16px; padding:24px; }
}
.lmp-site-brand-list p { margin:0; font-size:var(--wp--preset--font-size--h-4); font-weight:700; color:var(--lmp-muted); }
.lmp-partner-section { position:relative; isolation:isolate; background:var(--lmp-gradient-paper,var(--lmp-paper)); overflow:hidden; }
.lmp-partner-section::before,.lmp-home-service::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background-image:radial-gradient(color-mix(in srgb,var(--lmp-ink) 14%,transparent) .8px,transparent .8px); background-size:10px 10px; mask-image:linear-gradient(110deg,transparent 20%,black); }
.lmp-home-service { isolation:isolate; }
.lmp-home-service::before { background-image:radial-gradient(color-mix(in srgb,var(--lmp-paper) 10%,transparent) .8px,transparent .8px); }
.lmp-logo-window { overflow:hidden; margin-top:32px; mask-image:linear-gradient(to right,transparent,black 6%,black 94%,transparent); }
.lmp-partner-marquee { position:relative; }
.lmp-logo-set { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin:0; }
.lmp-logo-set > figure { display:flex; align-items:center; justify-content:center; flex:0 0 160px; width:160px; height:94px; padding:16px; margin:0; box-sizing:border-box; background:var(--lmp-paper); border:var(--lmp-border); border-radius:var(--lmp-radius); }
.lmp-logo-set img { display:block; width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
.lmp-partner-marquee.is-enhanced .lmp-logo-track { display:flex; width:max-content; animation:lmp-logos 100s linear infinite; }
.lmp-partner-marquee.is-enhanced .lmp-logo-set { flex-wrap:nowrap; padding-right:24px; }
.lmp-partner-marquee:is(:hover,:focus-within,.is-paused) .lmp-logo-track { animation-play-state:paused; }
.lmp-marquee-toggle,.lmp-gallery-controls { display:none; }
.is-enhanced .lmp-marquee-toggle { display:block; position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.is-enhanced .lmp-marquee-toggle:focus-visible { width:auto; height:auto; padding:12px 18px; margin:0; clip-path:none; left:20px; bottom:12px; z-index:2; }
.lmp-marquee-toggle,.lmp-gallery-controls button { font:inherit; font-size:.875rem; font-weight:650; color:var(--lmp-ink); background:var(--lmp-paper); border:var(--lmp-border); border-radius:var(--lmp-radius); padding:12px 18px; cursor:pointer; }
.lmp-marquee-toggle { margin-top:20px; }
.lmp-marquee-toggle:hover,.lmp-gallery-controls button:hover:not(:disabled) { background:var(--lmp-brand); color:var(--lmp-ink); }
.lmp-marquee-toggle:focus-visible,.lmp-gallery-controls button:focus-visible,.lmp-handover-carousel:focus-visible { outline:3px solid var(--lmp-brand); outline-offset:4px; }
.lmp-gallery-slider .lmp-handover-carousel { display:grid; grid-auto-flow:column; grid-template-columns:none; grid-auto-columns:calc((100% - 56px)/3); overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; scrollbar-width:thin; padding-bottom:16px; }
.lmp-handover-carousel > * { scroll-snap-align:start; }
.lmp-gallery-slider.is-enhanced .lmp-gallery-controls { display:flex; align-items:center; justify-content:flex-end; gap:12px; margin-top:20px; }
.lmp-gallery-controls button { min-width:48px; font-size:1.25rem; }
.lmp-gallery-controls button:disabled { opacity:.35; cursor:default; }
.lmp-gallery-status { font-size:.875rem; color:var(--lmp-paper); min-width:86px; text-align:center; font-variant-numeric:tabular-nums; }
@keyframes lmp-logos { to { transform:translateX(-50%); } }
@media (max-width:900px) { .lmp-gallery-slider .lmp-handover-carousel { grid-auto-columns:calc((100% - 28px)/2); } }
@media (max-width:600px) { .lmp-gallery-slider .lmp-handover-carousel { grid-auto-columns:88%; } .lmp-logo-set > figure { flex-basis:140px; width:140px; height:84px; } }
@media (prefers-reduced-motion:reduce) { .lmp-partner-marquee.is-enhanced .lmp-logo-track { animation:none; } .lmp-partner-marquee.is-enhanced .lmp-logo-set { flex-wrap:wrap; padding:0; } .lmp-partner-marquee.is-enhanced .lmp-logo-track { width:auto; } .lmp-logo-set[aria-hidden] { display:none; } .is-enhanced .lmp-marquee-toggle { display:none; } }
.lmp-site-offers { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-top:32px; }
.lmp-offer { margin:0; background:var(--lmp-paper); border:var(--lmp-border); border-radius:var(--lmp-radius); overflow:hidden; }
.lmp-offer figure { margin:0; background:var(--lmp-canvas); }
.lmp-offer figure img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; object-position:center; }
.lmp-offer-copy h3 a { color:var(--lmp-ink); text-decoration:none; }
.lmp-offer-copy h3 a:hover { text-decoration:underline; }
.lmp-timeline { border-left:2px solid var(--lmp-line); padding-left:32px; }
.lmp-timeline > div { position:relative; margin:0 0 32px; }
.lmp-timeline > div::before { content:''; width:12px; height:12px; border-radius:50%; background:var(--lmp-brand); border:1px solid var(--lmp-ink); position:absolute; left:-39px; top:10px; }
.lmp-timeline h3 { font-size:var(--wp--preset--font-size--h-4); }
.lmp-service-index { font-size:var(--wp--preset--font-size--caption); color:var(--lmp-muted); font-weight:700; margin:0 0 18px; }
.lmp-contact-cards h3 { font-size:var(--wp--preset--font-size--h-4); }
.lmp-contact-cards p { font-size:var(--wp--preset--font-size--small); }
.lmp-prototype-note { border-left:3px solid var(--lmp-brand); padding-left:16px; color:var(--lmp-muted); font-size:var(--wp--preset--font-size--caption); }
.lmp-site-footer { background:var(--lmp-gradient-dark); color:var(--lmp-paper); padding-block:56px 24px; }
.lmp-site-footer { position:relative; isolation:isolate; }
.lmp-site-footer::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background-image:radial-gradient(color-mix(in srgb,var(--lmp-paper) 10%,transparent) .8px,transparent .8px); background-size:10px 10px; mask-image:linear-gradient(110deg,transparent 5%,black); }
.lmp-site-footer a { color:inherit; text-decoration:none; }
.lmp-site-footer a:hover { color:var(--lmp-brand); text-decoration:none; }
.lmp-site-footer a:focus-visible { outline:2px solid var(--lmp-brand); outline-offset:5px; }
.lmp-footer-signature { width:180px; max-width:100%; margin:0 0 24px; padding:0; border:0; }
.lmp-footer-signature .lmp-footer-logo { width:100%; max-width:none; margin:0; }
.lmp-footer-signature .lmp-footer-logo img { display:block; width:100%; height:auto; max-width:100%; border-radius:0; }
.lmp-footer-brand-demo { padding:clamp(20px,4vw,48px); background:var(--lmp-gradient-dark); border-radius:var(--lmp-radius); color:var(--lmp-paper); }
.lmp-footer-brand-demo .lmp-footer-signature { margin:0; border-bottom:0; padding-bottom:0; }
.lmp-footer-grid { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:48px; }
.lmp-footer-grid > * { margin:0; }
@media(min-width:701px) {
 .lmp-footer-grid > :nth-child(n+2) { padding-top:98px; }
}
.lmp-footer-grid p { font-size:var(--wp--preset--font-size--small); margin-block:12px; }
.lmp-footer-grid h3 { font-size:var(--wp--preset--font-size--body); margin-bottom:24px; letter-spacing:0; }
.lmp-footer-brand { font-size:var(--wp--preset--font-size--h-3) !important; font-weight:800; letter-spacing:-.04em; margin-top:0 !important; }
.lmp-footer-bottom { border-top:1px solid color-mix(in srgb,var(--lmp-paper) 20%,transparent); padding-top:24px; margin-top:40px; display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.lmp-footer-bottom p { margin:0; font-size:var(--wp--preset--font-size--caption); }
.lmp-site-article { padding-block:64px; max-width:900px; margin-inline:auto; }
.lmp-site-article h1 { font-size:var(--wp--preset--font-size--h-2); }
.lmp-site-article .wp-block-post-featured-image img { width:100%; max-height:520px; object-fit:contain; border-radius:var(--lmp-radius); }
.lmp-site-article .entry-content { max-width:760px; margin-inline:auto; }
.lmp-site-article :is(strong,b) { font-weight:700; }
.lmp-site-article .entry-content > :is(p,ul,ol) { line-height:1.75; }
.lmp-site-article .entry-content h2 { font-size:var(--wp--preset--font-size--h-3); margin-top:40px; margin-bottom:20px; }
.lmp-post-feed { gap:24px; margin:0; padding:0; }
.lmp-post-feed > li { display:flex; min-width:0; }
.lmp-post-feed .lmp-content-card { width:100%; }
.lmp-post-feed .wp-block-post-date { color:var(--lmp-muted); font-size:.8125rem; }
.lmp-post-feed .wp-block-post-excerpt { font-size:var(--wp--preset--font-size--small); color:var(--lmp-muted); line-height:1.6; }
.lmp-post-feed .wp-block-post-excerpt__more-link { display:inline-block; margin-top:12px; font-weight:700; color:var(--lmp-ink); }
.lmp-home-news .lmp-post-feed > li:not(:first-child) .lmp-content-card { background:var(--lmp-paper); color:var(--lmp-ink); border-color:var(--lmp-line); }
.lmp-home-news .lmp-post-feed > li:not(:first-child) .lmp-card-body h3 a { color:var(--lmp-ink); }
.lmp-home-news .lmp-post-feed > li:first-child :is(.wp-block-post-date,.wp-block-post-excerpt,.wp-block-post-excerpt__more-link) { color:var(--lmp-paper); }
.lmp-home-news .lmp-post-feed > li:not(:first-child) :is(.wp-block-post-date,.wp-block-post-excerpt) { color:var(--lmp-muted); }
@media (max-width:700px) { .lmp-post-feed { grid-template-columns:1fr !important; } }
@media(max-width:1100px) {
 .lmp-site-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display:flex; }
 .lmp-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none; }
 .lmp-site-header .wp-block-navigation { margin-left:auto; }
 .lmp-site-offers { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
 .lmp-site-width { width:calc(100% - 40px); }
 .lmp-site-utility { font-size:10px; }
 .lmp-site-utility .lmp-utility-contact { display:none; }
 .lmp-site-header-inner { min-height:84px; gap:16px; padding-block:16px; }
 .lmp-site-header .wp-block-site-logo { width:120px; }
 .lmp-site-header .wp-block-button__link { font-size:.75rem; min-height:40px; padding:12px 16px; }
 .lmp-site-hero-inner,.lmp-site-split { grid-template-columns:1fr; gap:32px; }
 .lmp-site-hero-inner { padding-block:48px 40px; }
 .lmp-hero-copy h1 { font-size:48px; }
 .lmp-hero-media { padding:8px 0; }
 .lmp-route-strip .lmp-site-width { grid-template-columns:1fr 1fr; }
 .lmp-route-strip a { padding:16px 12px; font-size:.75rem; }
 .lmp-route-strip p { border-bottom:1px solid color-mix(in srgb,var(--lmp-paper) 18%,transparent); }
 .lmp-site-section .lmp-grid { grid-template-columns:1fr; }
 .lmp-site-gallery { grid-template-columns:1fr; }
 .lmp-footer-grid { grid-template-columns:1fr; gap:24px; }
 .lmp-page-intro { padding-block:24px 32px; }
 .lmp-page-intro h1 { font-size:40px; overflow-wrap:anywhere; }
 .lmp-site-offers { gap:12px; }
 .lmp-site-article { padding:40px 20px; }
}

/* Contrast pass: explicit section roles, not one repeated light card layout. */
.lmp-promo-hero { position:relative; isolation:isolate; overflow:hidden; background:var(--lmp-ink); color:var(--lmp-paper); }
.lmp-promo-backdrop { position:absolute; inset:0; z-index:-2; margin:0; }
.lmp-promo-backdrop img { width:100%; height:100%; object-fit:cover; object-position:center bottom; opacity:.72; }
.lmp-promo-hero::after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,color-mix(in srgb,var(--lmp-ink) 95%,transparent),color-mix(in srgb,var(--lmp-ink) 74%,transparent) 52%,color-mix(in srgb,var(--lmp-ink) 12%,transparent)); pointer-events:none; }
.lmp-promo-inner { display:grid; grid-template-columns:1.45fr 1fr; align-items:center; min-height:650px; padding-block:76px; gap:32px; }
.lmp-promo-copy { position:relative; z-index:1; }
.lmp-promo-copy .lmp-eyebrow,.lmp-hero-pill { display:inline-block; border:1px solid color-mix(in srgb,var(--lmp-brand) 45%,transparent); color:var(--lmp-brand); padding:8px 16px; border-radius:999px; background:color-mix(in srgb,var(--lmp-brand) 8%,transparent); font-size:11px; }
.lmp-promo-copy h1 { color:var(--lmp-paper); font-size:clamp(48px,5.8vw,82px); line-height:1.03; letter-spacing:-.05em; margin-block:24px 28px; }
.lmp-promo-copy h1 em { color:var(--lmp-brand); font-style:normal; }
.lmp-promo-copy > p:not(.lmp-eyebrow) { max-width:640px; font-size:var(--wp--preset--font-size--lead); line-height:1.6; color:var(--lmp-paper); }
.lmp-promo-copy .wp-block-buttons { margin-top:32px; gap:16px; }
.lmp-promo-copy .is-style-outline .wp-block-button__link { color:var(--lmp-paper); }
.lmp-promo-copy .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-promo-package { margin:0; transform:rotate(-6deg); }
.lmp-promo-package img { width:100%; height:auto; display:block; filter:drop-shadow(0 25px 35px color-mix(in srgb,var(--lmp-ink) 65%,transparent)); }
.lmp-route-strip { background:var(--lmp-gradient-yellow); color:var(--lmp-ink); }
.lmp-route-strip p { border-color:color-mix(in srgb,var(--lmp-ink) 20%,transparent); }
.lmp-route-strip a { font-weight:700; }
.lmp-route-strip a:hover { color:var(--lmp-ink); background:color-mix(in srgb,var(--lmp-paper) 30%,transparent); }
.lmp-home-orientation { display:grid; grid-template-columns:1fr 1.2fr; align-items:start; gap:80px; }
.lmp-home-orientation > * { margin:0; min-width:0; }
.lmp-home-orientation h2 { margin-top:16px; }
.lmp-home-directions > div { display:grid; grid-template-columns:36px 1fr; gap:16px; padding-block:24px; border-bottom:var(--lmp-border); margin:0; }
.lmp-home-directions > div:first-child { padding-top:0; }
.lmp-home-directions .lmp-direction-no { color:var(--lmp-muted); font-size:var(--wp--preset--font-size--caption); margin-top:8px; }
.lmp-home-directions h3 { font-size:var(--wp--preset--font-size--h-4); letter-spacing:-.03em; margin:0 0 8px; }
.lmp-home-directions h3 a { text-decoration:none; }
.lmp-home-directions h3 a:hover { text-decoration:underline; }
.lmp-home-directions p { margin:0; color:var(--lmp-muted); font-size:var(--wp--preset--font-size--small); }
.lmp-section-shell-dark .lmp-eyebrow { color:var(--lmp-brand); }
.lmp-section-shell-dark .lmp-site-section > h2 { color:var(--lmp-paper); }
.lmp-section-shell-dark .lmp-section-intro { color:color-mix(in srgb,var(--lmp-paper) 85%,transparent); }
.lmp-section-shell-dark .lmp-site-split p { color:var(--lmp-paper); }
.lmp-section-shell-dark :is(.is-style-lmp-card,.lmp-content-card,.lmp-handover-card) { color:var(--lmp-ink); }
.lmp-section-shell-dark .is-style-lmp-card p { color:var(--lmp-muted); }
.lmp-section-shell-dark .is-style-lmp-card h3 { color:var(--lmp-ink); }
.lmp-section-shell-dark .is-style-lmp-card a { color:var(--lmp-ink); }
.lmp-home-service { position:relative; }
.lmp-home-service .lmp-site-section { padding-block:56px; }
.lmp-home-service .lmp-site-split { grid-template-columns:1fr 1.15fr; align-items:center; gap:48px; }
.lmp-home-service .lmp-site-split figure img { width:100%; height:340px; object-fit:cover; }
.lmp-service-copy > .lmp-eyebrow { margin:0 0 16px; color:var(--lmp-brand); }
.lmp-service-copy h2 { font-size:clamp(30px,3.3vw,42px); line-height:1.12; margin:0 0 20px; }
.lmp-service-copy > p:not(.lmp-eyebrow) { font-size:var(--wp--preset--font-size--small); margin-block:16px; }
.lmp-service-copy .wp-block-buttons { margin-top:24px; }
.lmp-home-used { background:var(--lmp-paper); }
.lmp-home-used .lmp-offer { border-color:var(--lmp-line); background:var(--lmp-ink); }
.lmp-home-used .lmp-offer-copy { border-top:0; }
.lmp-service-band { background:var(--lmp-gradient-yellow); color:var(--lmp-ink); }
.lmp-service-band .lmp-site-width { display:flex; gap:40px; justify-content:space-between; align-items:center; padding-block:48px; }
.lmp-service-band .lmp-site-width > * { margin:0; }
.lmp-service-band h2 { font-size:var(--wp--preset--font-size--h-3); margin:0 0 12px; }
.lmp-service-band p { margin:0; max-width:700px; font-size:var(--wp--preset--font-size--small); }
.lmp-service-band .wp-block-buttons { flex-shrink:0; }
.lmp-service-band .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-home-news { background:var(--lmp-canvas); }
.lmp-home-news .lmp-post-feed > li:first-child .lmp-content-card { background:var(--lmp-ink); color:var(--lmp-paper); border-color:var(--lmp-ink); }
.lmp-home-news .lmp-post-feed > li:first-child .lmp-content-card .lmp-card-body > p { color:var(--lmp-paper); }
.lmp-home-news .lmp-post-feed > li:first-child .lmp-content-card .lmp-card-body h3 a { color:var(--lmp-paper); }
.lmp-home-news .lmp-post-feed > li:first-child .lmp-content-card .lmp-card-body > .lmp-badge-neutral { color:var(--lmp-ink); background:var(--lmp-brand); border-color:var(--lmp-brand); }
.lmp-home-news .lmp-post-feed > li:first-child .lmp-content-card .wp-block-button__link { color:var(--lmp-paper); }
.lmp-home-news .lmp-post-feed > li:first-child .lmp-content-card .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-home-gallery { background:var(--lmp-gradient-dark); }
.lmp-home-gallery .lmp-site-gallery { gap:28px; }
.lmp-home-gallery .lmp-handover-card { border:var(--lmp-border); box-shadow:0 16px 32px color-mix(in srgb,var(--lmp-ink) 30%,transparent); }
.lmp-home-gallery .lmp-handover-card figcaption { padding-block:20px; }
.lmp-home-company { background:var(--lmp-paper); }
.lmp-home-company .lmp-site-section { padding-block:56px; }
.lmp-home-company .lmp-site-split { grid-template-columns:.9fr 1.1fr; gap:40px; }
.lmp-home-company .lmp-site-split figure img { height:340px; object-fit:cover; object-position:center 55%; }
.lmp-company-copy h2 { margin-block:16px; }
.lmp-company-copy > p:not(.lmp-eyebrow) { margin-block:12px; line-height:1.55; }
.lmp-company-copy .lmp-company-services { border-top:var(--lmp-border); padding-top:16px; font-size:var(--wp--preset--font-size--small); }
.lmp-page-intro { background:var(--lmp-gradient-dark); color:var(--lmp-paper); }
.lmp-page-intro .lmp-eyebrow { color:var(--lmp-brand); }
.lmp-page-intro p:not(.lmp-eyebrow):not(.lmp-breadcrumb) { color:var(--lmp-paper); }
.lmp-page-intro .lmp-breadcrumb,.lmp-page-intro .lmp-breadcrumb a { color:color-mix(in srgb,var(--lmp-paper) 72%,var(--lmp-ink)); }
.lmp-page-intro .is-style-outline .wp-block-button__link { color:var(--lmp-paper); }
.lmp-page-intro .wp-block-button__link:is(:hover,:focus-visible) { --lmp-button-start:var(--lmp-paper); --lmp-button-end:var(--lmp-paper); color:var(--lmp-ink); }
@media(max-width:800px) {
 .lmp-home-orientation { grid-template-columns:1fr; gap:32px; }
 .lmp-promo-inner { grid-template-columns:1fr; min-height:600px; }
 .lmp-promo-package { display:none; }
 .lmp-promo-copy { max-width:680px; }
 .lmp-promo-copy h1 { font-size:clamp(44px,7vw,64px); }
 .lmp-home-service .lmp-site-split,.lmp-home-company .lmp-site-split { grid-template-columns:1fr; }
 .lmp-service-band .lmp-site-width { flex-direction:column; align-items:flex-start; gap:24px; }
}
@media(max-width:700px) {
 .lmp-promo-inner { min-height:560px; padding-block:52px; }
 .lmp-promo-copy .lmp-eyebrow,.lmp-hero-pill { font-size:9px; padding:8px 10px; letter-spacing:.07em; }
 .lmp-promo-copy h1 { font-size:48px; }
 .lmp-promo-copy > p:not(.lmp-eyebrow) { font-size:1.0625rem; }
 .lmp-promo-hero::after { background:color-mix(in srgb,var(--lmp-ink) 65%,transparent); }
 .lmp-home-service .lmp-site-section { padding-block:40px; }
 .lmp-home-service .lmp-site-split { gap:28px; }
 .lmp-home-service .lmp-site-split figure img { height:240px; }
 .lmp-home-company .lmp-site-split figure img { height:320px; }
}

/* Used machines: clear dark product/price surface, no yellow separator. */
.lmp-offer { background:var(--lmp-ink); color:var(--lmp-paper); border-color:var(--lmp-line); box-shadow:0 8px 22px color-mix(in srgb,var(--lmp-ink) 12%,transparent); transition:transform var(--lmp-transition),box-shadow var(--lmp-transition); }
.lmp-offer:hover,.lmp-offer:focus-within { transform:translateY(-3px); box-shadow:0 14px 28px color-mix(in srgb,var(--lmp-ink) 19%,transparent); }
.lmp-offer-copy { background:var(--lmp-ink); }
.lmp-offer-copy h3 a { color:var(--lmp-paper); }
.lmp-used-card { background:var(--lmp-ink); color:var(--lmp-paper); border-color:var(--lmp-line); box-shadow:0 8px 22px color-mix(in srgb,var(--lmp-ink) 12%,transparent); }
.lmp-used-card .lmp-card-body > p,.lmp-used-card .lmp-card-body h3 { color:var(--lmp-paper); }
.lmp-site-gallery .lmp-handover-card { color:var(--lmp-paper); }
/* A distinct closing component, rather than a large yellow shop surface. */
.lmp-contact-panel { position:relative; overflow:hidden; isolation:isolate; padding:clamp(32px,5vw,64px); border-radius:var(--lmp-radius); border:1px solid color-mix(in srgb,var(--lmp-paper) 12%,var(--lmp-ink)); background:var(--lmp-gradient-dark); color:var(--lmp-paper); box-shadow:0 16px 36px color-mix(in srgb,var(--lmp-ink) 14%,transparent); }
.lmp-contact-panel::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background-image:radial-gradient(color-mix(in srgb,var(--lmp-paper) 10%,transparent) .8px,transparent .8px); background-size:10px 10px; mask-image:linear-gradient(100deg,transparent 10%,black 100%); }
.lmp-contact-panel > .lmp-eyebrow { color:var(--lmp-brand); margin-bottom:20px; }
.lmp-contact-panel h2 { color:var(--lmp-paper); max-width:750px; }
.lmp-contact-panel > p:not(.lmp-eyebrow) { color:color-mix(in srgb,var(--lmp-paper) 87%,transparent); max-width:700px; }
.lmp-contact-panel .wp-block-buttons { margin-top:28px; gap:16px; }
.lmp-contact-panel .wp-block-button.is-style-secondary .wp-block-button__link { --lmp-button-start:var(--lmp-brand); --lmp-button-end:color-mix(in srgb,var(--lmp-brand) 90%,var(--lmp-paper)); color:var(--lmp-ink); }
.lmp-contact-panel .wp-block-button.is-style-outline .wp-block-button__link { color:var(--lmp-paper); }
.lmp-contact-panel .wp-block-button .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); }
@media(prefers-reduced-motion:reduce) { .lmp-offer:hover,.lmp-offer:focus-within { transform:none; } }
.lmp-pill-demo { padding:24px; border-radius:var(--lmp-radius); background:var(--lmp-gradient-dark); }
.lmp-pill-demo .lmp-hero-pill { margin:0; }
.lmp-quicknav-demo { border-radius:var(--lmp-radius); overflow:hidden; }
.lmp-quicknav-demo .lmp-site-width { width:100%; }
.lmp-ci-section > .lmp-pill-demo + h3 { margin-top:32px; }
