/* OK-VISE Product Blocks. Scoped styles for product blocks and preserved legacy form wrappers. */
.okvpb-block,.okvpb-lightbox,.okvpb-page { --okvpb-blue:#3366cc; --okvpb-ink:#202833; --okvpb-muted:#58636f; --okvpb-line:#dce1e6; --okvpb-pale:#f3f5f7; --okvpb-white:#fcfcfc; --okvpb-font:"Proxima Nova",proxima-nova,Arial,sans-serif; --okvpb-scroll-offset:110px; box-sizing:border-box; }
.okvpb-block { color:var(--okvpb-ink); background:var(--okvpb-white); font-family:var(--okvpb-font); line-height:1.55; margin-block:0; padding-block:clamp(2.5rem,5vw,4.5rem); width:100%; max-width:none; scroll-margin-top:var(--okvpb-scroll-offset); }
.okvpb-block *,.okvpb-block *::before,.okvpb-block *::after,.okvpb-lightbox * { box-sizing:border-box; }
.okvpb-block [hidden],.okvpb-lightbox [hidden] { display:none!important; }
.okvpb-page { padding:0!important; margin:0!important; max-width:none!important; width:100%; }
.okvpb-page__article { padding:0; margin:0; max-width:none; }
.okvpb-container { width:100%; max-width:1240px; margin-inline:auto; padding-inline:clamp(1.25rem,3vw,2.5rem); }
.okvpb-block :where(h1,h2,h3,p,figure,ul,dl) { margin-top:0; }
.okvpb-block :where(h1,h2,h3) { color:var(--okvpb-ink)!important; font-family:var(--okvpb-font)!important; text-transform:none; }
.okvpb-block .okvpb-heading { font-size:clamp(1.6rem,2.5vw,2.2rem)!important; line-height:1.18!important; font-weight:700!important; letter-spacing:-.025em; margin:0 0 .8rem!important; }
.okvpb-block .okvpb-lead { font-size:1.0625rem; color:var(--okvpb-muted); max-width:72ch; margin:0; line-height:1.6; }
.okvpb-section-head { margin-bottom:1.75rem; }
.okvpb-block a { color:var(--okvpb-blue); text-underline-offset:.22em; }
.okvpb-block a:hover { text-decoration:underline; }
.okvpb-block :where(a,button,input,summary):focus-visible,.okvpb-lightbox :where(a,button):focus-visible { outline:3px solid var(--okvpb-blue); outline-offset:4px; }
.okvpb-block :where(button,summary) { font-family:inherit; cursor:pointer; }
.okvpb-block button { text-transform:none; flex-shrink:1; overflow:visible; letter-spacing:normal; box-shadow:none; }
.okvpb-block button[class],.okvpb-block button[role],.okvpb-block button[data-version] { text-transform:none; letter-spacing:normal; font-family:var(--okvpb-font); box-shadow:none; }
.okvpb-sr-only { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; padding:0!important; margin:-1px!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.okvpb-block .okvpb-note { color:var(--okvpb-muted); font-size:.875rem; margin:1.2rem 0 0; }
.okvpb-empty { padding:1.5rem; background:#f1f4f9; border:1px dashed #929b9e; color:#3d4856; font:14px/1.6 Arial,sans-serif; }
/* Introduction and gallery. Images always use contain; source files stay untouched. */
.okvpb-intro { padding-top:clamp(1.5rem,3vw,2.75rem); }
.okvpb-breadcrumb { font-size:.8125rem; color:var(--okvpb-muted); margin-bottom:clamp(2rem,4vw,3.5rem); }
.okvpb-breadcrumb ol { list-style:none; display:flex; flex-wrap:wrap; gap:.4rem .6rem; margin:0; padding:0; }
.okvpb-breadcrumb li { display:inline-flex; align-items:center; gap:.6rem; margin:0; padding:0; }
.okvpb-block .okvpb-breadcrumb li+li::before { content:none!important; }
.okvpb-block .okvpb-breadcrumb-separator { color:#929b9e; font-size:inherit; line-height:1; font-weight:400; }
.okvpb-block .okvpb-breadcrumb a { color:inherit; text-decoration:none; }
.okvpb-block .okvpb-breadcrumb :where(li,a) { font-size:inherit; line-height:1.45; }
.okvpb-intro__layout { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr); column-gap:clamp(2rem,5vw,5rem); row-gap:0; grid-template-rows:auto 1fr; align-items:start; }
.okvpb-intro__layout > .okvpb-intro__title { grid-column:1; grid-row:1; }
.okvpb-intro__layout > .okvpb-intro__copy { grid-column:1; grid-row:2; }
.okvpb-intro__layout > .okvpb-gallery { grid-column:2; grid-row:1 / span 2; }
.okvpb-intro--left .okvpb-gallery { grid-column:1; }
.okvpb-intro--left .okvpb-intro__title,.okvpb-intro--left .okvpb-intro__copy { grid-column:2; }
.okvpb-intro--no-image .okvpb-intro__layout { grid-template-columns:minmax(0,760px); }
.okvpb-intro--no-image .okvpb-intro__title,.okvpb-intro--no-image .okvpb-intro__copy { grid-column:1; }
.okvpb-intro__copy { min-width:0; }
.okvpb-block .okvpb-eyebrow { font-size:.75rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--okvpb-muted); margin:0 0 1rem; }
.okvpb-block .okvpb-intro__title { font-size:clamp(2rem,3.3vw,2.875rem)!important; font-weight:700!important; letter-spacing:-.035em; line-height:1.12!important; margin:0 0 1.25rem!important; text-wrap:balance; }
.okvpb-intro__description { font-size:1.125rem; line-height:1.65; color:#46515d; max-width:50ch; }
.okvpb-intro__description p { font-size:inherit; line-height:inherit; margin:0 0 1rem; }
.okvpb-block .okvpb-benefits { padding:0; list-style:none; margin:1.25rem 0 1.75rem; font-size:.9375rem; }
.okvpb-benefits li { display:flex; gap:.7rem; margin:.55rem 0; padding:0; }
.okvpb-benefits li::before { content:""; flex:0 0 5px; height:5px; margin-top:.65em; background:var(--okvpb-blue); }
.okvpb-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem; margin-top:1.75rem; }
.okvpb-actions:empty { display:none; }
.okvpb-block .okvpb-button { display:inline-flex; align-items:center; justify-content:space-between; gap:1.5rem; min-height:50px; padding:.8rem 1.2rem; border:1px solid var(--okvpb-line); border-radius:2px; color:var(--okvpb-ink); background:transparent; font-size:.9375rem; line-height:1.35; font-weight:600; text-decoration:none; box-shadow:none; }
.okvpb-block .okvpb-button--primary { background:var(--okvpb-blue); border-color:var(--okvpb-blue); color:#fff; }
.okvpb-block .okvpb-button:hover { border-color:var(--okvpb-blue); text-decoration:none; background:#eef3fd; }
.okvpb-block .okvpb-button--primary:hover { color:#fff; background:#2952a3; }
.okvpb-block svg.okvpb-arrow { display:inline-block; width:18px; height:18px; min-width:18px; flex:0 0 18px; fill:none; color:inherit; vertical-align:middle; }
.okvpb-block .okvpb-button:not(.okvpb-button--primary) .okvpb-arrow,.okvpb-block .okvpb-detail-toggle .okvpb-arrow,.okvpb-block .okvpb-gallery__zoom .okvpb-arrow { color:var(--okvpb-blue); }
.okvpb-block .okvpb-detail-toggle .okvpb-arrow.is-open { transform:rotate(180deg); }
.okvpb-gallery { min-width:0; }
.okvpb-gallery__figure { margin:0; }
.okvpb-gallery__main { display:block; position:relative; width:100%; aspect-ratio:4/3; background:#fff; border:1px solid #e8ebee; }
.okvpb-block .okvpb-gallery__image { width:100%; height:100%; display:block; object-fit:contain; max-width:100%; margin:0; padding:clamp(.8rem,2vw,1.5rem); border:0; }
.okvpb-gallery__zoom { position:absolute; bottom:.75rem; right:.9rem; display:flex; align-items:center; gap:.65rem; background:rgba(255,255,255,.95); padding:.2rem .35rem; color:var(--okvpb-muted); font-size:.75rem; }
.okvpb-gallery__caption { color:var(--okvpb-muted); font-size:.8125rem; padding-top:.65rem; }
.okvpb-gallery__thumbs { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1rem; }
.okvpb-gallery__thumb { display:block; flex:0 0 76px; height:64px; border:1px solid var(--okvpb-line); border-radius:0; background:#fff; padding:4px; }
.okvpb-gallery__thumb[aria-current=true] { border:2px solid var(--okvpb-blue); padding:3px; }
.okvpb-gallery__thumb img { display:block; width:100%; height:100%; object-fit:contain; margin:0; }
/* Tabs are enhanced only after successful initialization; no-JS content is visible. */
.okvpb-tabs { padding-top:0; }
.okvpb-tab { scroll-margin-top:var(--okvpb-scroll-offset); min-width:0; }
.okvpb-tabs__nav { display:flex; align-items:stretch; gap:2rem; overflow-x:auto; border-bottom:1px solid var(--okvpb-line); margin:0 0 2.25rem; padding:0; scrollbar-width:thin; }
.okvpb-block .okvpb-tabs__nav button { flex:0 0 auto; appearance:none; border:0; border-bottom:3px solid transparent; border-radius:0; background:transparent; padding:1rem .1rem; color:var(--okvpb-muted); font-weight:600; font-size:1rem; line-height:1.4; min-height:54px; margin:0; }
.okvpb-block .okvpb-tabs__nav button:hover,.okvpb-block .okvpb-tabs__nav button[aria-selected=true] { color:var(--okvpb-ink); border-bottom-color:var(--okvpb-blue); background:transparent; }
.okvpb-block .okvpb-tabs__nav button:focus-visible { outline-offset:-4px; }
.okvpb-tabs.is-enhanced > .okvpb-container > .okvpb-tab > .okvpb-tab__fallback-title { display:none; }
.okvpb-tab > .okvpb-block { padding-top:0; padding-bottom:1rem; }
.okvpb-tab > .okvpb-block > .okvpb-container { padding-inline:0; }
.okvpb-tab__fallback-title { font-size:1.4rem; margin:2rem 0 1.25rem; }
.okvpb-tab > :where(p,ul) { max-width:75ch; }
.okvpb-tab > .wp-block-image img { max-width:100%; height:auto; object-fit:contain; }
.okvpb-auto-models > .okvpb-table-tabs > .okvpb-container { max-width:none; padding-inline:0; }
.okvpb-auto-section--tabs { padding-top:0; }
.okvpb-auto-models .okvpb-table-tabs { margin:0; padding:0; }
.okvpb-auto-models .okvpb-table-tabs .okvpb-tabs__nav { margin-bottom:1.5rem; }
.okvpb-block .okvpb-table-version { color:var(--okvpb-muted); font-size:.875rem; margin:0 0 1rem; }
/* Overview first; complete specifications stay next to their model. */
.okvpb-models__notes { margin-bottom:1rem; color:var(--okvpb-muted); font-size:.8125rem; }
.okvpb-block .okvpb-models__notes p { margin:0 0 .5rem; }
.okvpb-version-picker { display:flex; flex-wrap:wrap; gap:.25rem; width:fit-content; padding:.25rem; margin:0 0 1.1rem; background:#eef1f4; border-radius:3px; }
.okvpb-block .okvpb-version-picker button { appearance:none; border:1px solid transparent; padding:.6rem .9rem; min-height:42px; margin:0; border-radius:2px; color:var(--okvpb-muted); background:transparent; font-size:.875rem; font-weight:600; line-height:1.3; }
.okvpb-block .okvpb-version-picker button[aria-pressed=true] { background:#fff; border-color:#d6dde6; color:var(--okvpb-blue); }
.okvpb-block .okvpb-table { width:100%; border-collapse:collapse; border-spacing:0; table-layout:auto; margin:0; color:var(--okvpb-ink); background:transparent; font-size:.9375rem; }
.okvpb-table th,.okvpb-table td { text-align:left; vertical-align:middle; padding:1.1rem .9rem; border:0; border-bottom:1px solid var(--okvpb-line); background:transparent; line-height:1.4; overflow-wrap:anywhere; }
.okvpb-table thead th { background:var(--okvpb-pale); color:#4f5b67; font-size:.75rem; font-weight:600; padding:.9rem; vertical-align:bottom; }
.okvpb-table tbody th { font-size:.9375rem; font-weight:700; white-space:nowrap; padding-left:.9rem; }
.okvpb-model-version { display:block; font-size:.7rem; line-height:1.4; color:var(--okvpb-muted); font-weight:400; margin-top:.35rem; }
.okvpb-models.is-enhanced .okvpb-model-version { display:none; }
.okvpb-downloads { display:flex; gap:.45rem .9rem; flex-wrap:wrap; min-width:112px; }
.okvpb-downloads a { font-weight:600; font-size:.8125rem; display:inline-flex; align-items:center; gap:.4rem; white-space:nowrap; text-decoration:underline; text-decoration-color:#c3cbd3; padding:.25rem 0; min-height:32px; }
.okvpb-downloads a:hover { text-decoration-color:var(--okvpb-blue); }
.okvpb-block .okvpb-detail-toggle { width:auto; display:inline-flex; align-items:center; justify-content:space-between; gap:.75rem; color:var(--okvpb-ink); background:transparent; border:1px solid var(--okvpb-line); border-radius:2px; font-size:.75rem; padding:.65rem .7rem; min-height:42px; font-weight:600; line-height:1.2; min-width:108px; margin:0; }
.okvpb-block .okvpb-detail-toggle:hover,.okvpb-block .okvpb-detail-toggle[aria-expanded=true] { color:var(--okvpb-blue); border-color:var(--okvpb-blue); background:#f1f5fd; }
.okvpb-block .okvpb-detail-toggle span { font-size:1.1rem; }
.okvpb-table .okvpb-table__detail-row > td { padding:0; border:0; }
.okvpb-model-details { margin:0; border:0; background:var(--okvpb-pale); }
.okvpb-model-details summary { padding:1rem; font-weight:600; font-size:.875rem; }
.okvpb-models.is-enhanced .okvpb-model-details > summary { display:none; }
.okvpb-auto-models.is-enhanced .okvpb-model-details > summary { display:none; }
.okvpb-auto-models .okvpb-model-details dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:2rem; }
.okvpb-auto-models .okvpb-model-details__body { display:block; }
.okvpb-auto-models .okvpb-table tbody th { white-space:normal; min-width:8rem; }
.okvpb-auto-section .okvpb-imported-content { width:100%; max-width:none; margin:0; padding:0; }
.okvpb-imported-table + p { margin-top:1rem; }
.okvpb-auto-models dd { overflow-wrap:anywhere; }
.okvpb-auto-models :where(td,dd) img { max-width:100%; height:auto; object-fit:contain; }
.okvpb-source-table { max-width:100%; width:100%; overflow-x:auto; scrollbar-width:thin; }
.okvpb-source-table table { width:100%; border-collapse:collapse; font-size:.875rem; }
.okvpb-source-table :where(th,td) { min-width:5rem; border:1px solid var(--okvpb-line); padding:.75rem; vertical-align:top; text-align:left; }
.okvpb-source-table :where(th,thead td) { color:var(--okvpb-ink); background:var(--okvpb-pale); }
.okvpb-source-table img { max-width:100%; height:auto; object-fit:contain; }
.okvpb-anchor { display:block; scroll-margin-top:var(--okvpb-scroll-offset); }
.okvpb-model-details__body { padding:1.75rem; display:grid; gap:2rem; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); border-bottom:1px solid var(--okvpb-line); }
.okvpb-model-details__data h3 { font-size:1.0625rem; line-height:1.3; margin:0 0 1rem; }
.okvpb-model-details dl { margin:0; }
.okvpb-model-details dl > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); gap:1rem; padding:.55rem 0; border-bottom:1px solid #dce1e6; font-size:.875rem; }
.okvpb-model-details dt { color:var(--okvpb-muted); font-weight:400; }
.okvpb-model-details dd { margin:0; font-weight:600; }
.okvpb-model-details__drawing { align-self:center; margin:0; background:white; }
.okvpb-model-details__drawing img { display:block; width:100%; height:auto; max-height:440px; object-fit:contain; padding:1rem; }
/* Compact, click-to-load video. */
.okvpb-container--video { max-width:940px; }
.okvpb-video__figure { max-width:860px; margin:0 auto; }
.okvpb-video__screen { background:#e9edf1; aspect-ratio:16/9; width:100%; overflow:hidden; position:relative; border:1px solid var(--okvpb-line); }
.okvpb-video__screen :where(video,iframe) { position:absolute; inset:0; width:100%; height:100%; border:0; display:block; }
.okvpb-video__screen video { object-fit:contain; }
.okvpb-video__poster { width:100%; height:100%; display:block; object-fit:contain; }
.okvpb-block .okvpb-video__play { overflow:hidden; position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1rem; width:100%; height:100%; border:0; border-radius:0; color:#fff; background:rgba(19,30,44,.3); margin:0; padding:1rem; font-size:.9375rem; font-weight:600; text-shadow:0 1px 3px #172438; }
.okvpb-block .okvpb-video__play:hover { background:rgba(19,30,44,.4); }
.okvpb-video__play-icon { width:64px; height:64px; border-radius:50%; background:var(--okvpb-blue); display:grid; place-items:center; font-size:20px; padding-left:4px; text-shadow:none; }
.okvpb-video__fallback { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; padding:1rem; background:rgba(255,255,255,.85); }
.okvpb-video__screen.is-enhanced .okvpb-video__fallback { position:static; }
.okvpb-video__figure figcaption,.okvpb-video__privacy { color:var(--okvpb-muted); font-size:.8125rem; line-height:1.5; margin:.75rem 0 0; }
.okvpb-transcript { margin-top:1.5rem; border-top:1px solid var(--okvpb-line); padding-top:1rem; }
.okvpb-transcript summary { font-weight:600; font-size:.9375rem; }
.okvpb-transcript > div { margin-top:1rem; font-size:.9375rem; color:var(--okvpb-muted); }
/* Gallery dialog is appended to the body and owns its scoped styles. */
.okvpb-lightbox { width:min(1100px,94vw); max-width:94vw; max-height:94dvh; border:0; padding:1rem; color:var(--okvpb-ink); background:#fff; font-family:var(--okvpb-font); }
.okvpb-lightbox::backdrop { background:rgba(12,21,34,.82); }
.okvpb-lightbox__bar { display:flex; justify-content:space-between; gap:.75rem; align-items:center; margin-bottom:.75rem; }
.okvpb-lightbox button { font:600 14px/1.4 var(--okvpb-font); color:var(--okvpb-ink); background:#fff; border:1px solid var(--okvpb-line); border-radius:2px; min-height:44px; padding:.6rem 1rem; cursor:pointer; }
.okvpb-lightbox__image { display:block; width:100%; height:calc(90dvh - 130px); object-fit:contain; }
.okvpb-lightbox__caption { margin:.75rem 0 0; font-size:.8125rem; }
@media(min-width:761px) and (max-width:1000px) {
 .okvpb-intro__layout { gap:2rem; }
 .okvpb-actions { flex-direction:column; align-items:stretch; }
 .okvpb-table th,.okvpb-table td { padding:.8rem .5rem; font-size:.8125rem; }
 .okvpb-table thead th { padding:.7rem .5rem; font-size:.7rem; }
 .okvpb-block .okvpb-detail-toggle { min-width:88px; font-size:.7rem; }
 .okvpb-downloads { min-width:86px; }
}
@media(max-width:760px) {
 .okvpb-intro__layout { display:flex; flex-direction:column; align-items:stretch; gap:2rem; }
 .okvpb-intro__description { font-size:1.0625rem; }
 .okvpb-breadcrumb { margin-bottom:1.75rem; }
 .okvpb-actions { gap:.65rem; }
 .okvpb-button { flex:1 1 100%; }
 .okvpb-gallery__thumb { flex-basis:64px; height:56px; }
 .okvpb-tabs__nav { gap:1.5rem; margin-bottom:1.75rem; }
 .okvpb-block .okvpb-tabs__nav button { font-size:.9375rem; }
 .okvpb-table,.okvpb-table tbody { display:block; }
 .okvpb-table thead { position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
 .okvpb-table tbody { margin-bottom:1rem; border:1px solid var(--okvpb-line); }
 .okvpb-table .okvpb-table__summary { display:grid; grid-template-columns:minmax(0,1fr); padding:0 1rem; }
 .okvpb-table .okvpb-table__summary th { padding:1rem 0 .9rem; font-size:1.0625rem; background:transparent; white-space:normal; }
 .okvpb-table .okvpb-table__summary td { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; padding:.75rem 0; font-size:.9375rem; border-bottom:1px solid var(--okvpb-line); }
 .okvpb-table .okvpb-table__summary td[data-label]::before { content:attr(data-label); color:var(--okvpb-muted); font-size:.8125rem; max-width:65%; }
 .okvpb-table .okvpb-table__summary td.okvpb-table__action { display:block; border:0; }
 .okvpb-table__action:empty { display:none!important; }
 .okvpb-block .okvpb-detail-toggle { width:100%; padding:.7rem .8rem; font-size:.875rem; }
 .okvpb-table__detail-row,.okvpb-table__detail-row > td { display:block; }
 .okvpb-model-details__body { grid-template-columns:minmax(0,1fr); padding:1.25rem; gap:1.5rem; border:0; }
 .okvpb-auto-models .okvpb-model-details dl { grid-template-columns:minmax(0,1fr); }
 .okvpb-downloads { justify-content:flex-end; }
 .okvpb-container--video { padding-inline:1.25rem; }
 .okvpb-tab > .okvpb-video > .okvpb-container--video { padding-inline:0; }
 .okvpb-lightbox__image { height:calc(85dvh - 140px); }
 .okvpb-lightbox button { padding:.6rem .7rem; font-size:12px; }
}
@media(prefers-reduced-motion:no-preference) { .okvpb-block a,.okvpb-block button { transition:background-color .15s,border-color .15s,color .15s; } }
@media print {
 .okvpb-tabs .okvpb-tab[hidden],.okvpb-models tbody[hidden],.okvpb-models [data-version-note][hidden] { display:block!important; }
 .okvpb-tabs__nav,.okvpb-version-picker,.okvpb-video__play,.okvpb-gallery__thumbs,.okvpb-block .okvpb-detail-toggle { width:auto; display:none!important; }
 .okvpb-tab__fallback-title { display:block!important; }
 .okvpb-model-details:not([open]) > .okvpb-model-details__body { display:grid; }
 .okvpb-block { padding-block:1rem; break-inside:avoid; }
}
/* Optional text and video panels; the player uses the compact video block width. */
.okvpb-info-copy { max-width:76ch; color:var(--okvpb-ink); font-size:1.0625rem; line-height:1.7; overflow-wrap:anywhere; }
.okvpb-info-copy p { margin:0 0 1rem; }
.okvpb-video-panel .okvpb-panel-video,.okvpb-video-panel .okvpb-moved-video { max-width:820px; margin:0 auto 1rem; background:transparent; padding:0; }
.okvpb-video-panel .okvpb-video__privacy { max-width:820px; margin:1rem auto; }
.okvpb-panel-video figcaption { margin-top:.75rem; font-size:.875rem; color:var(--okvpb-muted); }
.okvpb-moved-video__content { max-width:none; margin:0; padding:0; }
.okvpb-file-group { display:flex; align-items:center; }
.okvpb-table-tabs > .okvpb-container { padding-inline:0; max-width:none; }
/* Article-style recommendations, with original product images shown in full. */
.okvpb-recommended__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(2rem,3.5vw,3rem) clamp(1.25rem,2.3vw,2rem); }
.okvpb-recommended--2 .okvpb-recommended__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.okvpb-recommended--1 .okvpb-recommended__grid { grid-template-columns:minmax(0,1fr); max-width:680px; }
.okvpb-product-card { display:flex; min-width:0; background:transparent; border:0; box-shadow:none; margin:0; padding:0; }
.okvpb-block .okvpb-product-card__link { display:flex; flex-direction:column; width:100%; min-width:0; color:inherit; text-decoration:none; background:transparent; border:0; padding:0; margin:0; box-shadow:none; }
.okvpb-product-card__link::before,.okvpb-product-card__link::after { content:none!important; }
.okvpb-product-card__media { aspect-ratio:16/10; background:#fff; border:1px solid #e8ebee; overflow:hidden; width:100%; }
.okvpb-block .okvpb-product-card__image { display:block; width:100%; height:100%; max-width:100%; object-fit:contain; padding:1rem; margin:0; border:0; border-radius:0; box-shadow:none; }
.okvpb-product-card__placeholder { display:flex; justify-content:center; align-items:center; height:100%; color:var(--okvpb-muted); font-weight:600; }
.okvpb-product-card__body { display:flex; flex:1; flex-direction:column; border-bottom:1px solid var(--okvpb-line); padding:1.25rem 0 1.375rem; }
.okvpb-block .okvpb-product-card__title { font:700 clamp(1.1875rem,1.6vw,1.375rem)/1.3 var(--okvpb-font); letter-spacing:-.015em; color:var(--okvpb-ink); margin:0; overflow-wrap:anywhere; }
.okvpb-product-card__excerpt { font-size:.9375rem; line-height:1.55; margin:.75rem 0 0; }
.okvpb-product-card__read { display:inline-flex; align-items:center; gap:.625rem; color:var(--okvpb-blue); font-size:.875rem; font-weight:700; margin-top:auto; padding-top:1.25rem; }
.okvpb-product-card__link:hover .okvpb-product-card__title { color:var(--okvpb-blue); text-decoration:underline; text-underline-offset:.18em; text-decoration-thickness:1px; }
@media(max-width:1000px) and (min-width:761px) { .okvpb-recommended .okvpb-recommended__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .okvpb-recommended .okvpb-recommended__grid { grid-template-columns:minmax(0,1fr); max-width:none; } }
.okvpb-moved-video video { display:block; width:100%; max-width:100%; height:auto; }
.okvpb-block .okvpb-video__play > span:last-child { color:#fff; background:#202833; padding:.5rem .8rem; border-radius:2px; text-shadow:none; line-height:1.4; }

/* Contact CTA + Form, matching the compact Solutions Blocks 1.8.3 layout. */
.okvpb-block.okvpb-contact { background:#2f3e57; color:#fcfcfc; padding-block:clamp(3rem,4.75vw,4rem); }
.okvpb-contact.okvpb-contact--legacy { padding:0; }
.okvpb-contact > .block-form { background:transparent; padding-block:clamp(3rem,4.75vw,4rem); color:#fcfcfc; }
.okvpb-contact .okvpb-contact__grid,.okvpb-contact > .block-form > .container { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:clamp(2rem,4vw,3.5rem); max-width:1220px; width:100%; padding-inline:clamp(1.25rem,4vw,3rem); margin-inline:auto; }
.okvpb-contact > .block-form > .container::before,.okvpb-contact > .block-form > .container::after { display:none; }
.okvpb-contact .okvpb-contact__copy,.okvpb-contact .block-form .col-content,.okvpb-contact .block-form .col-form { width:auto; max-width:none; min-width:0; margin:0; float:none; flex:none; }
.okvpb-contact .okvpb-contact__copy h2,.okvpb-contact .block-form .col-content > h2 { color:#fcfcfc!important; font-size:clamp(1.75rem,3vw,2.875rem); letter-spacing:-.025em; line-height:1.12; margin:0 0 1.25rem; }
.okvpb-contact .okvpb-contact__copy p,.okvpb-contact .block-form .col-content :where(p,h3,a) { color:#fcfcfc; }
.okvpb-contact .okvpb-contact__media { margin:1.5rem 0 0; }
.okvpb-contact .okvpb-contact__image,.okvpb-contact .block-form .card.employee.horizontal .img img { display:block; position:static; width:auto; height:auto; max-width:min(148px,100%); max-height:132px; object-fit:contain; }
.okvpb-contact .block-form .card.employee.horizontal { display:block; padding:0; background:transparent; margin:1.5rem 0 0; border:0; width:100%; }
.okvpb-contact .block-form .card.employee.horizontal .img { width:auto; height:auto; aspect-ratio:auto; position:static; margin:0 0 1rem; background:transparent; }
.okvpb-contact .block-form .card.employee.horizontal .employee-info { padding:0; }
.okvpb-contact .block-form .card.employee.horizontal :where(h3,h4) { color:#fcfcfc!important; }
.okvpb-contact .okvpb-contact__copy address { font-style:normal; font-weight:700; margin-top:1rem; }
.okvpb-contact .okvpb-contact__copy address a { display:block; color:inherit; text-decoration:underline; text-underline-offset:.18em; width:fit-content; }
.okvpb-contact .okvpb-contact__form,.okvpb-contact .block-form .col-form { background:#fff; color:#2f3e57; padding:clamp(1.5rem,2.5vw,2rem); --color-heading:#161d28; --color-paragraph:#2f3e57; --color-text-link:#3366cc; --color-form-label:#2f3e57; --color-form-text:#2f3e57; --color-checkbox:#2f3e57; --color-border-forms-focus:#3366cc; }
.okvpb-contact .okvpb-contact__form :where(h2,h3,h4,legend,label,p,span),.okvpb-contact .block-form .col-form :where(h2,h3,h4,legend,label,p,span) { color:#2f3e57; }
.okvpb-contact .okvpb-contact__form h3,.okvpb-contact .block-form .gform_title { font-size:clamp(1.375rem,2vw,1.75rem); line-height:1.2; margin:0 0 1rem; }
.okvpb-contact :is(.okvpb-contact__form,.col-form) :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),textarea,select) { box-sizing:border-box; max-width:100%; width:100%; color:#2f3e57; background-color:#fff; }
.okvpb-contact :is(.okvpb-contact__form,.col-form) textarea { height:10rem; min-height:10rem; }
.okvpb-contact :is(.okvpb-contact__form,.col-form) .gform_fields { row-gap:1rem; }
.okvpb-contact :is(.okvpb-contact__form,.col-form) :where(input[type="submit"],button[type="submit"]) { background:#3366cc; border:1px solid #3366cc; color:#fff; min-height:44px; padding:.75rem 1.25rem; width:auto; }
.okvpb-contact :is(.okvpb-contact__form,.col-form) a { color:#3366cc; }
.okvpb-contact :is(.okvpb-contact__form,.col-form) .gfield_description { color:#2f3e57; }
@media(max-width:760px) {
 .okvpb-contact .okvpb-contact__grid,.okvpb-contact > .block-form > .container { grid-template-columns:minmax(0,1fr); }
}
/* More selected overview columns remain scrollable inside the section on desktop. */
@media(min-width:761px) { .okvpb-overview-scroll { max-width:100%; overflow-x:auto; } }
.okvpb-auto-models :where(td,dd) img,.okvpb-source-table :where(td,th) img { display:block; width:auto; height:auto; max-width:min(100%,220px); max-height:160px; object-fit:contain; margin:.25rem 0; }
.okvpb-model-details__drawing { max-width:320px; justify-self:center; width:100%; }
.okvpb-model-details__drawing img { max-height:320px; }
.okvpb-interests { border-top:1px solid var(--okvpb-line); }
/* Optional full-size reference drawing belongs above the specification values. */
.okvpb-detail-heading { display:grid; grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr); align-items:start; gap:1.5rem; margin:0 0 1.5rem; }
.okvpb-block .okvpb-detail-heading h3 { margin:.5rem 0 0; }
.okvpb-detail-heading__drawing { margin:0; min-width:0; background:#fff; border:1px solid #e1e6ec; }
.okvpb-detail-heading__drawing a { display:block; }
.okvpb-detail-heading__drawing a::before,.okvpb-detail-heading__drawing a::after { content:none!important; }
.okvpb-block .okvpb-detail-heading__drawing .okvpb-detail-heading__image { display:block; width:100%; height:auto; max-width:100%; max-height:420px; object-fit:contain; padding:1rem; margin:0; border:0; }
@media(max-width:760px) { .okvpb-detail-heading { grid-template-columns:minmax(0,1fr); gap:1rem; } .okvpb-detail-heading__drawing { width:100%; } }

.okvpb-contact .block-form .card.employee.horizontal .img::after { display:none; }
.okvpb-contact .block-form .card.employee.horizontal .img { border-radius:0; overflow:visible; }
.okvpb-block.okvpb-contact :is(.okvpb-contact__form,.col-form) :is(input[type="submit"],button[type="submit"]) { background:#3366cc; border:1px solid #3366cc; color:#fff; min-height:44px; padding:.75rem 1.25rem; width:auto; }

/* 1.7 — restrained industrial finishing, with full, uncropped source images. */
.okvpb-intro { background:linear-gradient(115deg,#f5f7fb 0%,#fcfcfc 62%); border-bottom:1px solid #e4e9f1; padding-bottom:clamp(2.5rem,5vw,4rem); }
.okvpb-intro .okvpb-breadcrumb { margin-bottom:clamp(1.75rem,3vw,2.5rem); }
.okvpb-intro__copy { padding:0; }
.okvpb-intro__title::after { content:""; display:block; width:100%; height:1px; background:#cedbef; margin-top:1.1rem; }
.okvpb-intro__description { color:#4e5d6d; font-size:1.0625rem; line-height:1.7; }
.okvpb-intro__description > p:first-child { color:var(--okvpb-ink); }
.okvpb-actions { gap:.75rem 1.4rem; margin-top:1.8rem; }
.okvpb-intro .okvpb-actions .okvpb-button { min-height:48px; }
.okvpb-intro .okvpb-actions .okvpb-button:not(.okvpb-button--primary) { padding-inline:0; border:0; border-bottom:1px solid #bbc8dc; border-radius:0; background:transparent; }
.okvpb-intro .okvpb-actions .okvpb-button:not(.okvpb-button--primary):hover { border-bottom-color:var(--okvpb-blue); color:var(--okvpb-blue); }
.okvpb-gallery__stage { position:relative; background:#fff; border:1px solid #dce3ed; border-radius:4px; box-shadow:0 4px 18px rgba(32,50,81,.025); overflow:hidden; }
.okvpb-gallery .okvpb-gallery__main { border:0; background:#fff; }
.okvpb-gallery .okvpb-gallery__image { padding:24px 52px 36px; }
.okvpb-gallery .okvpb-gallery__zoom { inset:12px 12px auto auto; bottom:auto; border:1px solid #e2e8f0; border-radius:3px; padding:.4rem .6rem; gap:.4rem; color:#526174; background:rgba(255,255,255,.97); font-size:.75rem; }
.okvpb-gallery__controls { position:absolute; inset:0; pointer-events:none; }
.okvpb-gallery__count { position:absolute; bottom:10px; left:50%; transform:translateX(-50%); padding:2px 9px; background:#fff; font-size:.75rem; color:var(--okvpb-muted); font-variant-numeric:tabular-nums; letter-spacing:.04em; }
.okvpb-gallery__arrows { position:absolute; inset:0; display:flex; align-items:center; justify-content:space-between; padding:8px; pointer-events:none; }
.okvpb-block .okvpb-gallery__arrows button { pointer-events:auto; display:grid; place-items:center; width:44px; height:44px; min-width:44px; min-height:44px; padding:0; margin:0; border:0; border-radius:0; background:transparent; color:var(--okvpb-blue); box-shadow:none; cursor:pointer; touch-action:manipulation; }
.okvpb-block .okvpb-gallery__arrows button:hover { color:#173c78; background:transparent; }
.okvpb-block .okvpb-gallery__arrows button:active .okvpb-arrow { opacity:.6; }
/* Override theme focus fills; retain an outline only for keyboard navigation. */
.okvpb-block .okvpb-gallery__arrows button:is(:focus,:active,:focus-visible) { background:transparent!important; color:var(--okvpb-blue); box-shadow:none!important; }
.okvpb-block .okvpb-gallery__arrows button:focus:not(:focus-visible) { outline:none!important; }
.okvpb-block .okvpb-gallery__arrows button:focus-visible { outline:2px solid var(--okvpb-blue)!important; outline-offset:2px; }
.okvpb-gallery__main { cursor:zoom-in; }
.okvpb-gallery__previous .okvpb-arrow { transform:rotate(180deg); }
.okvpb-gallery__thumbs { margin-top:.75rem; gap:.6rem; }
.okvpb-gallery__thumb { border-radius:2px; border-color:#e0e5ec; }
.okvpb-gallery__thumb[aria-current=true] { background:#fff; border-color:var(--okvpb-blue); }
.okvpb-gallery__thumb:hover { border-color:var(--okvpb-blue); }
.okvpb-models { padding-top:clamp(2rem,4vw,3rem); }
.okvpb-auto-section--tabs { padding-top:clamp(1.5rem,3vw,2.25rem); }
.okvpb-block .okvpb-tabs__nav { gap:.75rem; margin-bottom:1.6rem; border-bottom-color:#cfd9e7; }
.okvpb-block .okvpb-tabs__nav button { padding:1rem 1.1rem; border-radius:4px 4px 0 0; color:#58697c; }
.okvpb-block .okvpb-tabs__nav button[aria-selected=true] { color:var(--okvpb-blue); background:#f0f4fc; border-bottom-color:var(--okvpb-blue); }
.okvpb-block .okvpb-tabs__nav button:hover { color:var(--okvpb-blue); background:#f6f8fc; }
.okvpb-version-picker { padding:3px; border:1px solid #dce4ee; background:#f0f3f8; margin-bottom:1.25rem; }
.okvpb-block .okvpb-version-picker button { min-height:38px; padding:.5rem 1.1rem; }
.okvpb-overview-scroll { border:1px solid #dce3ec; border-radius:4px; background:#fff; }
.okvpb-table thead th { background:#edf2f8; color:#46566a; padding:1rem; font-size:.75rem; letter-spacing:.01em; }
.okvpb-table tbody > .okvpb-table__summary > th { color:var(--okvpb-ink); }
.okvpb-table tbody > .okvpb-table__summary:hover > :is(th,td) { background:#f6f9fe; }
.okvpb-table tbody:has(.okvpb-model-details[open]) > .okvpb-table__summary > :is(th,td) { background:#eff4fc; }
.okvpb-table tbody:last-child > .okvpb-table__summary > :is(th,td) { border-bottom-color:transparent; }
.okvpb-downloads { gap:.4rem .6rem; }
.okvpb-downloads a { min-height:30px; padding:.3rem .55rem; border:1px solid #dce5f1; border-radius:3px; background:#f7f9fd; text-decoration:none; line-height:1.3; }
.okvpb-downloads a:hover { background:#edf3ff; border-color:#9fb9e9; text-decoration:underline; }
.okvpb-block .okvpb-detail-toggle { border-color:#c8d5e7; color:#36547e; background:#fff; padding:.7rem .8rem; border-radius:3px; }
.okvpb-model-details { background:#f5f8fc; }
.okvpb-model-details__body { border-left:3px solid #8aaae4; padding:1.75rem; }
.okvpb-model-details__data > h3 { font-size:1.2rem; }
.okvpb-model-details dl > div { padding:.65rem 0; border-bottom-color:#dce4ef; }
.okvpb-info-copy { padding:clamp(1.25rem,3vw,2rem); background:#f5f8fc; border-left:3px solid #a4bce7; border-radius:0 4px 4px 0; }
.okvpb-info-copy p:last-child { margin-bottom:0; }
.okvpb-video__screen { border-radius:5px; border-color:#d4deec; }
.okvpb-section-head { margin-bottom:1.8rem; }
.okvpb-recommended .okvpb-section-head::before { content:""; display:block; width:32px; height:3px; background:var(--okvpb-blue); margin-bottom:1rem; }
.okvpb-block .okvpb-product-card__link { background:#fff; border:1px solid #dce3ed; border-radius:4px; overflow:hidden; }
.okvpb-product-card__media { border:0; border-bottom:1px solid #e7ecf3; }
.okvpb-product-card__body { border:0; padding:1.2rem 1.25rem 1.25rem; }
.okvpb-block .okvpb-product-card__title { font-size:clamp(1.0625rem,1.5vw,1.25rem); line-height:1.35; }
.okvpb-product-card__read { border-bottom:1px solid #ced8e8; width:fit-content; padding-bottom:.3rem; }
.okvpb-product-card__link:hover { border-color:#9db5dc; box-shadow:0 6px 22px rgba(31,58,103,.055); }
.okvpb-interests { border-top:1px solid #e1e7f0; background:#f4f7fb; }
.okvpb-interests .okvpb-product-card__body { min-height:148px; }
.okvpb-contact .okvpb-contact__form,.okvpb-contact .block-form .col-form { border:1px solid #e0e6ee; border-radius:4px; }
.okvpb-contact :is(.okvpb-contact__form,.col-form) .gsection { padding-top:1.1rem; border-top:1px solid #dce4ee; }
.okvpb-contact :is(.okvpb-contact__form,.col-form) .gsection_title { font-size:1.25rem; line-height:1.3; margin-bottom:.5rem; }
.okvpb-contact :is(.okvpb-contact__form,.col-form) .gform_fields { row-gap:.95rem; }
@media(min-width:1024px) {
 .okvpb-contact .okvpb-contact__grid,.okvpb-contact > .block-form > .container { grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); }
 .okvpb-contact .okvpb-contact__copy,.okvpb-contact .block-form .col-content { position:static; }
 .okvpb-contact :is(.okvpb-contact__form,.col-form) .gfield_checkbox:has(.gchoice:nth-child(2)) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem 1rem; }
}
@media(max-width:760px) {
 .okvpb-intro { background:linear-gradient(180deg,#f4f7fb,#fcfcfc); }
 .okvpb-gallery__main { aspect-ratio:4/3; }
 .okvpb-gallery .okvpb-gallery__zoom { font-size:.6875rem; }
 .okvpb-block .okvpb-tabs__nav { gap:.35rem; }
 .okvpb-block .okvpb-tabs__nav button { padding:.9rem .75rem; }
 .okvpb-overview-scroll { border:0; background:transparent; }
 .okvpb-table tbody { border:1px solid #d8e2ef; border-radius:4px; background:#fff; overflow:hidden; }
 .okvpb-table .okvpb-table__summary th { padding-top:1.2rem; }
 .okvpb-model-details__body { padding:1.25rem; }
 .okvpb-product-card__body { padding:1.1rem 1.1rem 1.25rem; }
}
@media print {
 .okvpb-gallery__controls { display:none!important; }
 .okvpb-contact .okvpb-contact__copy,.okvpb-contact .block-form .col-content { position:static; }
 .okvpb-gallery__stage,.okvpb-product-card__link { box-shadow:none; }
}
.okvpb-contact :is(.okvpb-contact__form,.col-form) .ginput_container :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),textarea,select) { border:1px solid #b4c2d6; border-radius:3px; min-height:44px; padding:.6rem .75rem; font:inherit; box-shadow:none; }
.okvpb-contact :is(.okvpb-contact__form,.col-form) .ginput_container :where(input,textarea,select):focus { border-color:var(--okvpb-blue); }
/* Rich additional information and multiple model downloads. */
.okvpb-info-copy :is(ul,ol) { padding-left:1.4rem; margin:0 0 1rem; }
.okvpb-info-copy li { margin:.35rem 0; }
.okvpb-info-copy a { text-decoration:underline; text-underline-offset:.2em; overflow-wrap:anywhere; }
.okvpb-info-copy :is(strong,b) { font-weight:700; }
.okvpb-info-copy blockquote { margin:1rem 0; padding:.5rem 0 .5rem 1rem; border-left:2px solid #a4bce7; }
.okvpb-downloads .okvpb-step-download { white-space:normal; overflow-wrap:anywhere; max-width:18rem; }
/* 1.9: one section column; the wider form uses short rows on larger screens. */
.okvpb-contact .okvpb-contact__grid,.okvpb-contact > .block-form > .container { grid-template-columns:minmax(0,1fr); gap:1.5rem; }
.okvpb-contact .okvpb-contact__copy address { display:flex; flex-wrap:wrap; gap:.5rem 1.5rem; }
.okvpb-contact .okvpb-contact__media { margin:0 0 1rem; }
.okvpb-contact .block-form .card.employee.horizontal { display:flex; align-items:center; gap:1rem; margin:.75rem 0 0; }
.okvpb-contact .block-form .card.employee.horizontal .img { flex:0 0 64px; margin:0; }
.okvpb-contact .okvpb-contact__image,.okvpb-contact .block-form .card.employee.horizontal .img img { max-width:64px; max-height:64px; }
.okvpb-contact .block-form .contact-info { display:flex; flex-wrap:wrap; gap:.25rem 1.5rem; }
.okvpb-contact .block-form .contact-info p { margin:0; }
.okvpb-contact .okvpb-contact__copy h2,.okvpb-contact .block-form .col-content > h2 { margin-bottom:1rem; }
@media(min-width:900px) {
 .okvpb-contact :is(.okvpb-contact__form,.col-form) .gform_fields { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:1rem 1.5rem; }
 .okvpb-contact :is(.okvpb-contact__form,.col-form) .gform_fields > .gfield { grid-column:1 / -1; min-width:0; }
 .okvpb-contact :is(.okvpb-contact__form,.col-form) .gform_fields > :is(.gfield--type-text,.gfield--type-email,.gfield--type-select,.gfield--type-phone) { grid-column:span 4; }
 .okvpb-contact :is(.okvpb-contact__form,.col-form) .gfield_checkbox { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem 1rem; }
}

@media(min-width:900px) { .okvpb-contact :is(.okvpb-contact__form,.col-form) .gfield_checkbox > .gchoice { width:auto; } .okvpb-contact :is(.okvpb-contact__form,.col-form) .gfield_checkbox:has(.gchoice:only-child) { grid-template-columns:minmax(0,1fr); } }

/* 1.9.1 — contact heading and stationary contact details. */
.okvpb-contact .okvpb-contact__copy,.okvpb-contact .block-form .col-content,
.okvpb-contact .okvpb-contact__media,.okvpb-contact .block-form .card.employee.horizontal,
.okvpb-contact .block-form .card.employee.horizontal .img { position:static!important; top:auto!important; transform:none!important; }
.okvpb-contact .okvpb-contact__copy h2,.okvpb-contact .block-form .col-content > h2 { font-size:clamp(2rem,3.3vw,2.875rem)!important; font-weight:700!important; letter-spacing:-.035em; line-height:1.12!important; text-wrap:balance; margin:0 0 1.25rem!important; }
.okvpb-contact .okvpb-contact__copy h2::after,.okvpb-contact .block-form .col-content > h2::after { content:""; display:block; width:100%; height:1px; background:#cedbef; margin-top:1.1rem; }
.okvpb-contact .block-form .card.employee.horizontal { align-items:center; gap:1rem; }
.okvpb-contact .block-form .card.employee.horizontal .employee-info { min-width:0; }
.okvpb-contact .block-form .card.employee.horizontal .employee-info :is(h3,h4,.name) { font-weight:400!important; margin:0 0 .5rem!important; }
.okvpb-contact .block-form .card.employee.horizontal .contact-info { display:flex; align-items:baseline; flex-wrap:wrap; gap:.5rem 1.5rem; margin:0!important; }
.okvpb-contact .block-form .card.employee.horizontal .contact-info p { margin:0!important; }
.okvpb-contact .okvpb-contact__copy address { font-weight:400; }
.okvpb-contact .okvpb-contact__grid,.okvpb-contact > .block-form > .container { row-gap:clamp(2.25rem,4vw,3rem); }

/* Related products share the light category surface. */
.okvpb-recommended { background:#f4f7fb; }
