/* ooobs: contact forms and mobile navigation, October 2026 */
body.ooobs-lead-2026 { --lead-ink:#202b25; --lead-green:#253d2d; --lead-line:#d9e2d6; }
body.ooobs-lead-2026 .lead-block { color:var(--lead-ink); background:#edf2e8; border:1px solid var(--lead-line); border-radius:24px; padding:28px; margin:32px 0; text-align:left; min-width:0; }
body.ooobs-lead-2026 .lead-block.lead-block--wide { max-width:1240px; margin:36px auto; }
body.ooobs-lead-2026 .lead-block--compact { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:24px; align-items:start; }
body.ooobs-lead-2026 .lead-eyebrow { display:block; color:#53654f; font:600 11px/1.4 'Onest',sans-serif; text-transform:uppercase; letter-spacing:1.4px; margin-bottom:10px; }
body.ooobs-lead-2026 .lead-title { font:600 clamp(22px,2.5vw,30px)/1.17 'Onest',sans-serif; letter-spacing:-.7px; color:var(--lead-ink); margin:0 0 12px; }
body.ooobs-lead-2026 .lead-copy { font:400 14px/1.55 'Onest',sans-serif; color:#56624f; margin:0 0 14px; }
body.ooobs-lead-2026 .lead-steps { display:flex; flex-wrap:wrap; gap:6px 12px; font:500 11px/1.5 'Onest',sans-serif; color:#54674d; }
body.ooobs-lead-2026 .lead-form { display:block; min-width:0; position:relative; font-family:'Onest',sans-serif; text-align:left; }
body.ooobs-lead-2026 .lead-channels { display:flex; gap:4px; background:#dfe7da; border-radius:12px; padding:4px; margin:0 0 14px; }
body.ooobs-lead-2026 .lead-channel { flex:1; border:0; padding:11px 10px; min-height:44px; border-radius:9px; background:transparent; color:#52644c; font:600 13px/1.4 'Onest',sans-serif; cursor:pointer; }
body.ooobs-lead-2026 .lead-channel[aria-pressed=true] { background:#fff; color:#253d2d; box-shadow:0 1px 4px #202b2510; }
body.ooobs-lead-2026 .lead-label { display:block; font:500 12px/1.4 'Onest',sans-serif; color:#45553e; margin:0 0 7px; }
body.ooobs-lead-2026 .lead-input { display:block; width:100%; box-sizing:border-box; min-height:50px; border:1px solid #c9d5c3; border-radius:12px; background:#fff; color:#202b25; padding:13px 14px; font:400 16px/1.45 'Onest',sans-serif; margin:0 0 12px; outline:none; box-shadow:none; }
body.ooobs-lead-2026 .lead-input::placeholder { color:#778273; opacity:1; }
body.ooobs-lead-2026 .lead-input:focus { border-color:#345739; box-shadow:0 0 0 3px #34573918; }
body.ooobs-lead-2026 .lead-more { margin:10px 0 14px; }
body.ooobs-lead-2026 .lead-more summary { cursor:pointer; color:#415637; font:500 12px/1.5 'Onest',sans-serif; padding:10px 0; min-height:40px; box-sizing:border-box; }
body.ooobs-lead-2026 .lead-more[open] summary { margin-bottom:8px; }
body.ooobs-lead-2026 .lead-consent { display:flex; align-items:flex-start; gap:9px; font:400 11px/1.5 'Onest',sans-serif; color:#56644f; margin:0 0 14px; cursor:pointer; }
body.ooobs-lead-2026 .lead-consent input { width:17px; height:17px; flex:0 0 17px; margin:1px 0 0; accent-color:#253d2d; }
body.ooobs-lead-2026 .lead-submit,body.ooobs-lead-2026 .lead-next { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:50px; border:0; padding:13px 18px; border-radius:12px; color:#fff; background:#253d2d; font:600 14px/1.45 'Onest',sans-serif; text-decoration:none; cursor:pointer; box-sizing:border-box; }
body.ooobs-lead-2026 .lead-submit:hover,body.ooobs-lead-2026 .lead-next:hover { background:#34563e; color:#fff; }
body.ooobs-lead-2026 .lead-submit:disabled { opacity:.65; cursor:wait; }
body.ooobs-lead-2026 .lead-footnote { margin:10px 0 0; color:#687560; font:400 11px/1.5 'Onest',sans-serif; }
body.ooobs-lead-2026 .lead-status { color:#a42e20; font:500 13px/1.5 'Onest',sans-serif; margin:10px 0; }
body.ooobs-lead-2026 .lead-success { padding:4px 0; }
body.ooobs-lead-2026 .lead-success-mark { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%; background:#253d2d; color:white; font-size:24px; margin-bottom:14px; }
body.ooobs-lead-2026 .lead-success-title { margin:0 0 8px; color:#253d2d; font:600 21px/1.25 'Onest',sans-serif; }
body.ooobs-lead-2026 .lead-success-copy { margin:0 0 16px; font:400 13px/1.55 'Onest',sans-serif; color:#53654c; }
body.ooobs-lead-2026 .lead-success-meta { padding:12px; border-radius:10px; margin:12px 0; border:1px solid #ccd8c4; font:400 12px/1.6 'Onest',sans-serif; overflow-wrap:anywhere; }
body.ooobs-lead-2026 .lead-fallback { display:block; margin:12px 0 0; font-size:12px; color:#345739; text-align:center; }
body.ooobs-lead-2026 [hidden] { display:none!important; }
body.ooobs-lead-2026 .lead-hp { position:absolute; left:-10000px; width:1px; height:1px; opacity:0; overflow:hidden; }
body.ooobs-lead-2026 .nav-lead { border:0; border-radius:10px; min-height:40px; padding:10px 15px; background:#253d2d; color:white; font:600 12px/1.4 'Onest',sans-serif; cursor:pointer; margin-left:18px; flex-shrink:0; }
body.ooobs-lead-2026 .lead-dialog { padding:0; margin:auto; border:0; border-radius:24px; width:min(520px,calc(100% - 32px)); max-height:calc(100dvh - 32px); background:#edf2e8; box-shadow:0 30px 120px #17231840; overflow:auto; color:#202b25; }
body.ooobs-lead-2026 .lead-dialog::backdrop { background:#15201580; backdrop-filter:blur(5px); }
body.ooobs-lead-2026 .lead-dialog .lead-block { border:0; margin:0; padding:30px; }
body.ooobs-lead-2026 .lead-close { display:flex; align-items:center; justify-content:center; width:44px; height:44px; margin:10px 10px 0 auto; border:1px solid #d3ddcd; border-radius:50%; color:#253d2d; background:#f7f9f4; cursor:pointer; font:400 25px/1 'Onest',sans-serif; }
body.ooobs-lead-2026 .lead-dialog .lead-block { padding-top:6px; }
body.ooobs-lead-2026 .mobile-dock { display:none; }
body.ooobs-lead-2026 :is(.lead-submit,.lead-channel,.nav-lead,.lead-close,.dock-item):focus-visible { outline:3px solid #a77137; outline-offset:3px; }
body.ooobs-lead-2026 .article-body > .lead-block { margin:34px 0; }
body.ooobs-lead-2026 .article > .lead-block { margin:26px 0; }
body.ooobs-lead-2026 .home-contact-grid .lead-block { grid-column:1/-1; margin:12px 0 0; }
body.ooobs-lead-2026 #chat-modal { z-index:2000; }
@media (max-width:850px) {
 body.ooobs-lead-2026 { padding-bottom:calc(82px + env(safe-area-inset-bottom,0px)); }
 body.ooobs-lead-2026 .nav { position:sticky; top:0; z-index:1200; height:66px; min-height:66px; gap:8px; padding-left:18px; padding-right:18px; background:#fff; }
 body.ooobs-lead-2026 .nav-logo { margin-right:auto; font-size:24px; }
 body.ooobs-lead-2026 .nav-lead { margin:0; font-size:12px; padding:10px 13px; min-height:42px; }
 body.ooobs-lead-2026 .burger { display:flex; align-items:center; justify-content:center; width:44px; height:44px; min-width:44px; border:1px solid #d7e0d1; border-radius:12px; background:#f5f7f1; color:#253d2d; padding:0; }
 body.ooobs-lead-2026 .burger svg { width:21px; height:21px; }
 body.ooobs-lead-2026 .burger span { display:none; }
 body.ooobs-lead-2026 .nav-links { position:fixed; top:66px; left:0; right:0; bottom:calc(70px + env(safe-area-inset-bottom,0px)); width:auto; max-height:none; overflow-y:auto; overscroll-behavior:contain; padding:20px 18px 30px; background:#f7f8f2; border:0; box-shadow:none; display:none; flex-direction:column; justify-content:flex-start; align-items:stretch; gap:0; border-top:1px solid #dce4d6; z-index:5; margin:0; }
 body.ooobs-lead-2026 .burger.open svg { display:none; }
 body.ooobs-lead-2026 .burger.open::after { content:'×'; font:400 28px/1 'Onest',sans-serif; }
 body.ooobs-lead-2026 .nav-links.open { display:flex; }
 body.ooobs-lead-2026 .nav-links li { width:100%; list-style:none; }
 body.ooobs-lead-2026 .nav-links a { display:flex; align-items:center; min-height:54px; padding:14px 8px; border-bottom:1px solid #e0e5d9; border-radius:0; font:500 17px/1.4 'Onest',sans-serif; color:#253d2d; }
 body.ooobs-lead-2026 .nav.nav .nav-links li:last-child a { margin:0; padding:14px 8px; text-align:left; border:0; border-bottom:1px solid #e0e5d9; border-radius:0; }
 body.ooobs-lead-2026 .mobile-dock { display:grid; grid-template-columns:repeat(4,1fr); gap:5px; position:fixed; left:0; right:0; bottom:0; z-index:1100; background:#f9faf5f5; backdrop-filter:blur(16px); border-top:1px solid #d9e2d2; box-shadow:0 -4px 30px #243b2c08; padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px)); }
 body.ooobs-lead-2026 .dock-item { min-height:54px; border:0; border-radius:12px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; padding:6px 3px; color:#56684e; background:transparent; text-decoration:none; font:500 10px/1.2 'Onest',sans-serif; cursor:pointer; }
 body.ooobs-lead-2026 .dock-item svg { width:22px; height:22px; }
 body.ooobs-lead-2026 .dock-item.dock-primary { color:white; background:#253d2d; }
 body.ooobs-lead-2026 .dock-item[aria-expanded=true],body.ooobs-lead-2026 .dock-item[aria-current] { background:#e8eedf; color:#253d2d; }
 body.ooobs-lead-2026.lead-keyboard .mobile-dock,body.ooobs-lead-2026.lead-modal-open .mobile-dock { visibility:hidden; pointer-events:none; }
 body.ooobs-lead-2026.lead-menu-open { overflow:hidden; }
 body.ooobs-lead-2026 .lead-block { border-radius:18px; padding:22px; margin:24px 0; }
 body.ooobs-lead-2026 .lead-block.lead-block--wide { margin:28px 24px; }
 body.ooobs-lead-2026 .lead-block--compact { display:block; }
 body.ooobs-lead-2026 .lead-steps { margin-bottom:18px; }
 body.ooobs-lead-2026 .lead-title { font-size:25px; }
 body.ooobs-lead-2026 .lead-dialog { width:calc(100% - 20px); max-height:calc(100dvh - 20px); border-radius:22px; }
 body.ooobs-lead-2026 .lead-dialog .lead-block { padding:6px 24px 24px; }
 body.ooobs-lead-2026 .home-hero { padding-top:56px; }
 body.ooobs-lead-2026 .b24-hero,body.ooobs-lead-2026 .rm-hero { padding-top:44px; }
}
@media (max-width:420px) {
 body.ooobs-lead-2026 .lead-block.lead-block--wide { margin:24px 16px; }
 body.ooobs-lead-2026 .lead-block { padding:20px; }
 body.ooobs-lead-2026 .lead-title { font-size:23px; }
 body.ooobs-lead-2026 .home-hero h1 { font-size:clamp(30px,8.6vw,38px); line-height:1.08; }
 body.ooobs-lead-2026 .home-hero { padding-top:44px; }
 body.ooobs-lead-2026 .home-system { padding:18px; border-radius:20px; }
}
@media (prefers-reduced-motion:reduce) {
 body.ooobs-lead-2026 .lead-dialog,body.ooobs-lead-2026 .mobile-dock { scroll-behavior:auto; transition:none; }
}
