/* Small structural adaptations for native WordPress block wrappers. */
.wp-site-blocks { padding:0 }
.wp-block-post-content,.wp-block-template-part { margin:0 }
.wp-block-group { box-sizing:border-box }
.wp-block-post-content .wp-block-group { max-width:none }
.wp-block-post-content .wrap { max-width:1280px }
.wp-block-heading { color:inherit }
.lc-link-block { margin:0 }
.actions>.lc-link-block { max-width:100%; margin:0 }
.applications .application-grid>article>.lc-link-block { align-self:start }
.project-copy>.lc-link-block { margin-top:10px }
.lc-links { display:flex; flex-wrap:wrap; gap:20px; align-items:center }
.lc-links>p { margin:0 }
.lc-facts { width:100%; overflow-x:auto }
.lc-facts table { width:100%; border-collapse:collapse }
.lc-facts td { border:0; border-bottom:1px solid var(--line); padding:10px 0; vertical-align:top }
.lc-facts td+td { padding-left:20px }
.lc-facts.prices td:last-child { text-align:right; font-weight:650; white-space:nowrap }
.lc-facts.uv-facts td:first-child { color:var(--muted); width:40% }
.steps.lc-structured-list { counter-reset:steps; padding-left:0 }
.steps>.lc-list-item { counter-increment:steps }
.steps>.lc-list-item h3:before { content:counter(steps) '. '; color:var(--deep) }
.service-materials>.lc-list-item { padding-block:16px; border-top:1px solid var(--line) }
.wp-block-image.project-picture img { display:block; width:100%; height:100%; aspect-ratio:3/2; object-fit:cover; object-position:center 42% }
.wp-block-image.project-picture { margin:0; aspect-ratio:3/2 }
.wp-block-image.symbol-picture img { width:100%; aspect-ratio:3/2; object-fit:cover }
.wp-block-image.lc-uv-image { max-width:360px; width:100%; margin:0 auto }
.wp-block-image.lc-uv-image img { width:100%; height:auto; aspect-ratio:1; object-fit:cover; object-position:50% 40%; clip-path:inset(0); }
.wp-block-image figcaption { margin:0; color:var(--muted); font-size:.875rem }
.symbol-picture figcaption { font-size:.75rem; margin-top:6px }
.lc-header .brand { width:190px; margin:0; flex-shrink:0 }
.lc-header .brand img { width:100%; height:auto }
.lc-header .header-cta { margin:0 }
.lc-navigation .wp-block-navigation__container { gap:20px }
.lc-navigation .wp-block-navigation-item { padding:0; border:0 }
.lc-navigation .wp-block-navigation-item__content { font-size:.9375rem; color:var(--ink) }
.lc-footer p { margin:0 }
.editor-styles-wrapper .wp-block-group { min-width:0 }
.editor-styles-wrapper .block-editor-block-list__layout .wp-block { max-width:none }
@media(max-width:760px) {
 .lc-header .lc-navigation { width:auto; order:0; margin-left:auto }
 .lc-header .wp-block-navigation__responsive-container-open { min-width:44px; min-height:44px; align-items:center; justify-content:center }
 .lc-header .brand { width:165px }
 .lc-header .header-cta { display:none }
 .lc-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none!important }
 .lc-header .wp-block-navigation__responsive-container-open { display:flex!important }
 .lc-header .wp-block-navigation__responsive-container.is-menu-open { padding:28px; background:white }
 .lc-header .is-menu-open .wp-block-navigation__container { align-items:flex-start; width:100%; gap:12px }
 .lc-header .is-menu-open a { min-height:44px }
 .wp-block-image.lc-uv-image { max-width:280px }
}

/* Mobile facts stay readable without horizontal table scrolling. */
@media (max-width:480px) {
 .lc-facts.uv-facts table { table-layout:fixed }
 .lc-facts.uv-facts td { overflow-wrap:anywhere; hyphens:auto }
 .lc-facts.uv-facts td+td { padding-left:12px }
}
@media (max-width:760px) {
 .lc-header .wp-block-navigation__responsive-container-close { min-width:44px; min-height:44px; align-items:center; justify-content:center }
}

/* Direct contact on advertising landing pages. */
.lc-contact-bar { display:none }
.lc-phone-link { white-space:nowrap }
@media (max-width:760px) {
 body.lc-direct-contact { padding-bottom:calc(82px + env(safe-area-inset-bottom, 0px)) }
 .lc-contact-bar { position:fixed; inset:auto 0 0; z-index:40; display:flex; gap:10px; padding:12px 16px calc(12px + env(safe-area-inset-bottom, 0px)); background:#fff; border-top:1px solid var(--line, #d8e1de); box-shadow:0 -3px 18px #10282012 }
 .lc-contact-bar a.button { display:flex; align-items:center; justify-content:center; flex:1; min-width:0; min-height:48px; margin:0; padding:10px 12px; font-size:15px; line-height:1.3; text-align:center; text-decoration:none }
 .lc-contact-bar .lc-photo-link { background:#fff; color:var(--ink, #162d27); border:1px solid currentColor }
 body.lc-direct-contact #lc-ads-open { bottom:calc(88px + env(safe-area-inset-bottom, 0px)) }
}
