/* Scoped correction of the legacy typography cascade. Navigation stays dark on white. */
body.ldcr-canonical .hero .hero-content > h1,
body.ldcr-canonical .page-hero h1,
body.ldcr-canonical .section-dark > .section-heading h2,
body.ldcr-canonical .section-dark > .split > div > h2,
body.ldcr-canonical .order-control-v2 h2,
body.ldcr-canonical .order-control-v2 h3 {
    color: #fff;
}
body.ldcr-canonical .hero .hero-content > .hero-copy {
    color: rgba(255, 255, 255, .88);
}
body.ldcr-canonical .hero .hero-content > .eyebrow {
    color: var(--gold-light, #dfc27f);
}
body.ldcr-canonical .hero .button-ghost { color: #fff; }
body.ldcr-canonical .hero .button-gold { color: #0a2e22; }
body.ldcr-canonical .section-dark > .split > div > p:not(.eyebrow) {
    color: rgba(255, 255, 255, .82);
}
body.ldcr-canonical #quality { scroll-margin-top: 100px; }
body.ldcr-canonical .ldml-mobile-menu > div {
    max-height: calc(100vh - 96px);
    max-height: calc(100dvh - 96px);
    overflow-y: auto;
    overscroll-behavior: contain;
}
/* Hide only obsolete floating launchers, and only after the real Chatbox initializes. */
body.ldcr-canonical.ldcr-chat-ready a.ldml-wa-float,
body.ldcr-canonical.ldcr-chat-ready a.floating-wa { display: none !important; }
body.ldcr-canonical .ldcr-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
body.ldcr-canonical .ldcr-pagination a,
body.ldcr-canonical .ldcr-pagination span { padding: 10px 14px; border: 1px solid var(--line); }
body.ldcr-canonical .ldcr-pagination [aria-current="page"] { background: var(--forest); color: #fff; }
@media (max-width: 700px) {
    body.ldcr-canonical .hero .hero-content { padding-block: 42px; }
    body.ldcr-canonical .hero .hero-content > h1 { overflow-wrap: break-word; }
}

/* Canonical shared shell; no styling or assets are added on excluded routes. */
body.ldcr-canonical{--forest:#0b3b2c;--forest-2:#14533d;--ivory:#f7f2e8;--paper:#fffdfa;--ink:#16231c;--muted:#637067;--gold:#bd8c38;--gold-light:#dfc27f;--line:rgba(11,59,44,.15);--serif:Georgia,"Times New Roman",serif;--sans:Inter,"Segoe UI",Arial,sans-serif;overflow-wrap:break-word}
body.ldcr-canonical .ldcr-site-header .header-inner{gap:clamp(8px,1.4vw,22px)}
body.ldcr-canonical .ldcr-site-header .brand{min-width:0;flex-shrink:0}
body.ldcr-canonical .ldcr-site-header .desktop-nav{gap:clamp(10px,1.2vw,20px);font-size:12px;min-width:0}
body.ldcr-canonical .ldcr-site-header .desktop-nav a{white-space:nowrap}
body.ldcr-canonical .ldcr-site-header .header-cta{padding-inline:14px;gap:8px;flex-shrink:0}
.ldcr-menu-toggle{display:none;border:1px solid var(--line);border-radius:8px;background:transparent;min-width:44px;height:44px;padding:8px;cursor:pointer;color:var(--forest)}
.ldcr-menu-toggle span{display:block;width:24px;height:2px;margin:5px auto;background:currentColor}
.ldcr-mobile-nav[hidden]{display:none!important}
.ldcr-mobile-nav{position:absolute;inset:100% 0 auto;display:grid;padding:16px 24px 24px;background:var(--paper);box-shadow:0 20px 32px rgba(0,0,0,.13);overflow-y:auto;max-height:calc(100vh - 90px);max-height:calc(100dvh - 90px);overscroll-behavior:contain}
.ldcr-mobile-nav a{padding:12px;border-bottom:1px solid var(--line);color:var(--forest);font-weight:650;text-align:start}
.ldcr-languages{position:relative;flex-shrink:0;z-index:3}
.ldcr-languages summary{display:flex;gap:8px;align-items:center;justify-content:center;min-height:44px;min-width:48px;cursor:pointer;list-style:none;color:var(--forest);font-size:12px;font-weight:750}
.ldcr-languages summary::-webkit-details-marker{display:none}
.ldcr-languages nav{position:absolute;inset-block-start:calc(100% + 8px);inset-inline-end:0;width:210px;max-width:calc(100vw - 36px);max-height:min(65vh,440px);overflow:auto;display:grid;background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:0 16px 40px rgba(0,0,0,.15);padding:8px}
.ldcr-languages a{display:block;padding:10px 12px;font-size:14px;color:var(--forest);text-align:start}
.ldcr-languages a[aria-current],.ldcr-languages a:hover{background:var(--ivory)}
body.ldcr-canonical .ldcr-site-header [aria-current="page"]{text-decoration:underline;text-underline-offset:5px}
body.ldcr-canonical .ld-language-return{display:none!important}
body.ldcr-canonical .site-footer .brand-copy{color:#fff}
body.ldcr-canonical .site-footer .brand{min-width:0;flex-wrap:wrap}
body.ldcr-canonical .footer-grid>div{min-width:0}
body.ldcr-canonical .footer-links a{overflow-wrap:anywhere}
body.ldcr-canonical .quote-band h2,body.ldcr-canonical .ld-about-section--forest h2,body.ldcr-canonical .ld-final h2{color:#fff}
.ldcr-wa-fallback{position:fixed;inset-inline-end:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:9990}
.ldcr-wa-fallback>summary{padding:12px 18px;min-height:44px;border-radius:28px;background:#0b663e;color:#fff;font-weight:750;cursor:pointer;list-style:none;box-shadow:0 8px 26px rgba(0,0,0,.18)}
.ldcr-wa-fallback>summary::-webkit-details-marker{display:none}
.ldcr-wa-fallback>div{position:absolute;inset-inline-end:0;bottom:calc(100% + 12px);width:300px;max-width:calc(100vw - 36px);padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:0 18px 45px rgba(0,0,0,.2);color:var(--forest)}
.ldcr-wa-fallback a{display:grid;gap:4px;margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:6px}
body.ldcr-canonical.ldcr-chat-ready .ldcr-wa-fallback{display:none}
.ldcr-contact-fields{display:grid;gap:17px;margin:0;padding:0;border:0;min-width:0}
.ldcr-contact-page .quote-form{width:100%;max-width:100%;min-width:0}
.ldcr-contact-page .contact-grid>div,.ldcr-contact-page .contact-grid>aside{min-width:0}
.ldcr-contact-page .quote-form input,.ldcr-contact-page .quote-form select,.ldcr-contact-page .quote-form textarea{min-width:0;max-width:100%;font-size:16px;text-transform:none;letter-spacing:normal}
.ldcr-contact-page .button-outline{color:var(--forest);border-color:var(--forest);background:transparent}
.ldcr-inline-link{text-decoration:underline;text-underline-offset:3px}
.ldcr-composer-preview{margin:0;padding:16px;white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.6 var(--sans);border:1px solid var(--line);background:var(--ivory);color:var(--ink);text-transform:none;letter-spacing:normal}
.ldcr-composer-preview[hidden],.ldcr-check-result[hidden]{display:none}
.ldcr-preview-bar{background:#fff2bf;color:#352b0e;padding:12px 18px;font:13px/1.55 system-ui,sans-serif;display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;border-bottom:2px solid #b18926}
.ldcr-preview-bar strong{font-size:12px}.ldcr-preview-bar>a{text-decoration:underline}
.ldcr-preview-bar button{padding:8px 12px;min-height:44px;background:#fff;border:1px solid #9a7a2f;border-radius:6px;cursor:pointer;color:#352b0e;font:inherit}
.ldcr-check-result{width:100%;white-space:pre-wrap;background:#fff9e8;padding:12px;border:1px solid #d9c68b}
.ldcr-skip{position:fixed;top:8px;inset-inline-start:8px;z-index:100000;transform:translateY(-200%);padding:12px;background:#fff;color:#000}
.ldcr-skip:focus{transform:none}
body.ldcr-canonical :is(.ldcr-site-header,.ldcr-wa-fallback,.ldcr-quick-contact) :focus-visible{outline:3px solid #b5862d;outline-offset:3px}
@media(max-width:1050px){.ldcr-menu-toggle{display:block}.ldcr-languages{margin-inline-start:auto}body.ldcr-canonical .ldcr-site-header .desktop-nav,body.ldcr-canonical .ldcr-site-header .header-cta{display:none}}
@media(min-width:1051px){.ldcr-mobile-nav{display:none!important}}
@media(max-width:700px){body.ldcr-canonical .ldcr-site-header .brand-copy strong{font-size:19px}body.ldcr-canonical .ldcr-site-header .brand{gap:8px}body.ldcr-canonical .ldcr-site-header .brand img{width:40px;height:40px}.ldcr-preview-bar{font-size:12px}body.ldcr-canonical .hero .hero-content>h1{font-size:clamp(35px,10vw,47px);line-height:1.08}body.ldcr-canonical[dir=rtl] .hero h1{letter-spacing:0}}
@media(prefers-reduced-motion:reduce){body.ldcr-canonical *,body.ldcr-canonical *::before,body.ldcr-canonical *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.ldcr-preview-bar,.ldcr-site-header,.ldcr-wa-fallback,body.ldcr-canonical #ld-chatbox-widget,body.ldcr-canonical #ld-sounds{display:none!important}}

.ldcr-languages .ldcr-lang-flag{display:inline-block;flex:0 0 27px;width:27px;height:18px;object-fit:contain;vertical-align:middle;margin-inline-end:6px}
body.ldcr-canonical .ldcr-languages a{display:flex;align-items:center;gap:6px}

/* Match the observed English footer's WhatsApp choice plus email actions. */
.ldcr-canonical .ldcr-footer-wa{position:relative;min-width:0}
.ldcr-canonical .ldcr-footer-wa>summary{width:100%;list-style:none;cursor:pointer;text-align:center;white-space:normal}
.ldcr-canonical .ldcr-footer-wa>summary::-webkit-details-marker{display:none}
.ldcr-canonical .ldcr-footer-wa-contacts{display:grid;gap:10px;padding:14px;margin-block-start:10px;border:1px solid rgba(255,255,255,.35);border-radius:8px}
.ldcr-canonical .ldcr-footer-wa-contacts a{display:grid;gap:3px;color:#fff;font-size:13px;overflow-wrap:anywhere}

/* Form input typography and bidirectional numeric content are independent of labels. */
.ldcr-canonical .ldcr-quick-contact input,
.ldcr-canonical .ldcr-quick-contact select,
.ldcr-canonical .ldcr-quick-contact textarea{font-size:16px;font-weight:400;line-height:1.5;letter-spacing:normal;text-transform:none}
