/* Shared Biomomentum page system. Functional controls keep their own behavior. */
body.bm-site-style{--bm-blue:#0176c6;--bm-hover:#005b99;--bm-ink:#292b2e;--bm-muted:#5e6061;--bm-line:#dadada;--bm-soft:#f6f6f6;--bm-tint:#edf5fb;--nv-primary-accent:var(--bm-blue);--nv-secondary-accent:var(--bm-hover);--nv-text-color:var(--bm-ink);color:var(--bm-ink)}
.bm-site-style :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--bm-blue);outline-offset:3px}
.bm-page-heading{max-width:1100px;margin:0 auto;padding:48px 24px 24px}
.bm-site-style .bm-page-title{font:600 clamp(30px,3.2vw,40px)/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.6px;text-align:center;color:var(--bm-ink);margin:0}
/* Covers must work without Gutenberg's optional block stylesheet. */
.bm-style-index .wp-block-cover,.bm-style-company .wp-block-cover{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:240px!important;height:clamp(240px,24vw,340px)!important;padding:32px 24px!important;overflow:hidden;box-sizing:border-box}
.bm-style-index .wp-block-cover>.wp-block-cover__image-background,.bm-style-company .wp-block-cover>.wp-block-cover__image-background{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important;z-index:-2}
.bm-style-index .wp-block-cover>.wp-block-cover__background,.bm-style-company .wp-block-cover>.wp-block-cover__background{position:absolute;inset:0;background:#102b40!important;opacity:.64!important;z-index:-1}
.bm-style-index .wp-block-cover__inner-container,.bm-style-company .wp-block-cover__inner-container{position:relative;width:100%;max-width:1000px;margin:auto;text-align:center}
.bm-style-index .wp-block-cover :is(h1,.has-large-font-size),.bm-style-company .wp-block-cover h1{color:#fff!important;font-size:clamp(30px,3.2vw,40px)!important;line-height:1.2!important;margin:0!important;text-align:center}
.bm-site-style .bm-creator-page-intro{max-width:1100px;margin:32px auto;padding:0 24px;color:var(--bm-muted);font-size:16px;line-height:1.65}
.bm-site-style .bm-creator-page-intro p+p{margin-top:16px}
.bm-style-index .bm-components{padding-inline:24px;box-sizing:border-box}
.bm-site-style :is(.bm-native-title,.product_title){color:var(--bm-ink)!important;letter-spacing:-.5px;line-height:1.2}
.bm-site-style .bm-native-contact h1{color:var(--bm-ink);font-size:40px}
.bm-site-style .bm-figures{color:var(--bm-ink)}
.bm-site-style .bm-figures h2{font:600 28px/1.3 Arial,Helvetica,sans-serif;color:var(--bm-ink);margin:32px 0 24px}
.bm-site-style .bm-figure{border-color:var(--bm-line);border-radius:8px;overflow:hidden}
.bm-site-style .bm-figure figcaption{background:var(--bm-soft);color:var(--bm-ink)}
.bm-site-style .bm-native-controls button{border:1px solid var(--bm-line);border-radius:8px;color:var(--bm-blue);min-height:40px}
.bm-site-style .bm-native-contact hr,.bm-site-style .woocommerce-product-details__short-description hr{border:0;border-top:1px solid var(--bm-line)}
/* Standard actions; compact cart controls intentionally retain their approved size. */
.bm-site-style :is(.lab-button,.wpforms-submit,.wp-block-button__link,.wp-block-themeisle-blocks-button a,.woocommerce button.button,.woocommerce a.button,.bm-component-filter button,.bm-component-load-more,input[type=submit]){background:var(--bm-blue)!important;color:#fff!important;border:1px solid var(--bm-blue)!important;border-radius:8px!important;box-shadow:none!important;font:600 15px/1.35 Arial,Helvetica,sans-serif!important;text-transform:none!important;letter-spacing:0!important;padding:12px 20px!important;min-height:44px;box-sizing:border-box}
.bm-site-style :is(.lab-button,.wpforms-submit,.wp-block-button__link,.wp-block-themeisle-blocks-button a,.woocommerce button.button,.woocommerce a.button,.bm-component-filter button,.bm-component-load-more,input[type=submit]):hover{background:var(--bm-hover)!important;border-color:var(--bm-hover)!important}
.bm-site-style :is(.wpforms-container,.bm-component-filter,.woocommerce,.bm-style-form) :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea){border:1px solid var(--bm-line);border-radius:8px;min-height:44px;padding:10px 12px;font:16px/1.4 Arial,Helvetica,sans-serif;background:#fff;color:var(--bm-ink);box-sizing:border-box;max-width:100%}
.bm-site-style .woocommerce .quantity input.qty{width:70px}
.bm-site-style .woocommerce-tabs ul.tabs li a{color:var(--bm-muted)}
.bm-site-style .woocommerce-tabs ul.tabs li.active a{color:var(--bm-blue)}
.bm-site-style .nv-navbar :is(.current-menu-item,.current-menu-ancestor)>a{color:var(--bm-blue)!important}
.bm-site-style .site-footer{border-top:1px solid var(--bm-line)}
.bm-site-style #bm-feedback-open{background:var(--bm-blue);color:white;border-radius:8px;border:1px solid var(--bm-blue);min-height:44px}
.bm-site-style .bm-library-cart button:disabled{opacity:.55}
.bm-site-style.home #content .wp-block-separator{border-color:var(--bm-line)!important}
.bm-site-style.home #content h2:not(.bm-component-heading){line-height:1.25}
.bm-site-style .cart-empty{border-bottom:1px solid var(--bm-line)!important;padding-bottom:32px}
/* Configurator: selectors and DOM identities are unchanged. */
.bm-style-configurator .mainContaineur{color:var(--bm-ink);position:relative}
.bm-style-configurator .top{background:var(--bm-tint)!important;color:var(--bm-ink)!important;min-height:84px;height:auto!important;gap:12px;padding:20px 24px!important;box-sizing:border-box;flex-wrap:wrap;border-bottom:1px solid var(--bm-line)}
.bm-style-configurator .ConfigTitle{display:block!important;color:var(--bm-ink)!important;font-size:20px!important;line-height:1.3}
.bm-style-configurator .top :is(.arrow,.arrowStart){display:none!important}
.bm-style-configurator .top :is(select,input){border:1px solid var(--bm-line)!important;border-radius:8px;min-height:44px;padding:10px 12px;background:#fff;color:var(--bm-ink);font-size:16px;max-width:100%;box-sizing:border-box}
.bm-style-configurator .top :disabled{background:var(--bm-soft)!important;color:var(--bm-muted)!important;opacity:.7}
.bm-style-configurator .configMenu{margin:48px auto!important;padding:0 24px;color:var(--bm-muted)!important;box-sizing:border-box}
.bm-style-configurator .configMenu h2{font-size:24px;color:var(--bm-ink)}
.bm-style-configurator .sidebar{background:var(--bm-tint)!important;color:var(--bm-ink)!important;border:1px solid var(--bm-line);border-radius:8px;padding:24px;box-sizing:border-box}
.bm-style-configurator .sidebar h2{color:var(--bm-ink)!important;font-size:20px;line-height:1.3}
.bm-style-configurator .sidebar hr{border:0;border-top:1px solid var(--bm-line)}
.bm-style-configurator .sidebar a{color:var(--bm-blue)}
.bm-style-configurator .sidebar button{background:var(--bm-blue);color:#fff;border:1px solid var(--bm-blue);border-radius:8px;min-height:44px;padding:10px 16px}
@media(min-width:1251px){.bm-style-configurator .top{padding-right:340px!important}.bm-style-configurator .sidebar{top:104px;right:16px;width:300px;height:auto;max-height:calc(100% - 120px)}.bm-style-configurator .configMenu{margin-left:8%!important;margin-right:340px!important}}
@media(max-width:767px){.bm-page-heading{padding:32px 20px 20px}.bm-style-index .wp-block-cover,.bm-style-company .wp-block-cover{height:210px!important;min-height:210px!important}.bm-site-style .bm-native-title,.bm-site-style .product_title,.bm-site-style .bm-native-contact h1{font-size:30px!important}.bm-site-style .bm-components>.bm-component-heading,.bm-site-style .bm-components>h2,.bm-site-style .bm-figures h2{font-size:24px}.bm-style-index .bm-components{padding-inline:20px}.bm-style-configurator .top{padding:20px!important;display:flex!important;align-items:stretch}.bm-style-configurator .ConfigTitle{flex-basis:100%}.bm-style-configurator .top select{width:100%}.bm-style-configurator .sidebar{margin:24px 20px;width:calc(100% - 40px);max-height:none}.bm-style-configurator .configMain{margin:20px;width:calc(100% - 40px);box-sizing:border-box}.bm-style-configurator .configMenu{margin:32px auto!important;padding:0 20px}}

/* Recommendation stays in its column, including after dynamic calculations. */
.bm-style-configurator .sidebar a{color:var(--bm-blue)!important}
.bm-style-configurator #sidebarProduct h5{color:var(--bm-blue)!important;font-size:16px}
.bm-style-configurator .mainContaineur{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;padding:0 24px 32px;box-sizing:border-box}
.bm-style-configurator .mainContaineur>.top{grid-column:1/-1;padding:20px!important}
.bm-style-configurator .mainContaineur>:not(.top):not(.sidebar){grid-column:1;min-width:0;width:auto!important;margin-inline:0!important}
.bm-style-configurator .mainContaineur>.sidebar{grid-column:2;grid-row:2 / span 8;position:static;align-self:start;width:auto;height:auto;max-height:none;overflow:visible;margin:0}
.bm-style-configurator .mainContaineur>.configMenu{margin:16px 0!important;padding:0;max-width:700px}
.bm-style-configurator .mainContaineur hr{border:0;border-top:1px solid var(--bm-line)}
.bm-style-configurator .bottomBar{border-color:var(--bm-line)!important}
.bm-site-style #bm-cart-drawer{color:var(--bm-ink)}
.bm-site-style #bm-cart-drawer :is(button,.bm-cart-links a){border:1px solid var(--bm-line);border-radius:8px;padding:10px 16px;color:var(--bm-blue);background:#fff;min-height:44px;box-sizing:border-box}
.bm-site-style #bm-cart-drawer .bm-cart-links a{background:var(--bm-blue);border-color:var(--bm-blue);color:#fff;text-align:center}
.bm-site-style #bm-cart-drawer input{border:1px solid var(--bm-line);border-radius:8px;color:var(--bm-ink)}
.bm-site-style #bm-cart-drawer :focus-visible{outline-color:var(--bm-blue)}
.bm-site-style .site-footer :is(.footer-main,.footer-bottom){background:var(--bm-soft)!important}
@media(max-width:1000px){.bm-style-configurator .mainContaineur{grid-template-columns:minmax(0,1fr);padding-inline:20px;gap:20px}.bm-style-configurator .mainContaineur>.sidebar{grid-column:1;grid-row:auto;width:auto;margin:0}.bm-style-configurator .mainContaineur>.configMenu{padding:0;margin:12px 0!important}}

/* Keep image layers above existing cover backgrounds; never constrain prose covers. */
.bm-style-index .wp-block-cover>.wp-block-cover__image-background,.bm-style-company .wp-block-cover>.wp-block-cover__image-background{z-index:0}
.bm-style-index .wp-block-cover>.wp-block-cover__background,.bm-style-company .wp-block-cover>.wp-block-cover__background{z-index:1}
.bm-style-index .wp-block-cover__inner-container,.bm-style-company .wp-block-cover__inner-container{z-index:2}
.bm-style-company .wp-block-cover:not(:has(>.wp-block-cover__image-background)){height:auto!important;min-height:0!important;padding:40px 24px!important}
.bm-style-company .wp-block-cover__inner-container>.wp-block-group{padding-inline:0!important;max-width:860px;margin:auto}
.bm-style-company .wp-block-cover h1{background:transparent!important;padding:0!important}
.bm-site-style header :is(.current-menu-item,.current-menu-ancestor)>.wrap>a,.bm-site-style header a:hover{color:var(--bm-blue)!important}
