/* 3.16: shared navigation, comfortable reading and native WooCommerce variants. */
.cp-client-bar { background:#fff; border-bottom:1px solid #ddd; color:#111; }
.cp-client-bar__inner { display:flex; justify-content:space-between; align-items:center; gap:12px 24px; padding-block:8px; }
.cp-client-bar__knowledge,.cp-client-bar__service { display:flex; flex-wrap:wrap; gap:8px 20px; align-items:center; }
.cp-client-bar__knowledge a { display:inline-flex; align-items:center; min-height:40px; color:#111; font-family:var(--cp-font-ui); font-size:.9375rem; font-weight:700; border-bottom:3px solid transparent; text-decoration:none; }
.cp-client-bar__knowledge a:hover,.cp-client-bar__knowledge a.is-current { border-bottom-color:var(--cp-yellow); }
.cp-client-bar__service button { display:inline-flex; align-items:center; gap:8px; min-height:40px; padding:5px 0; border:0; border-radius:0; background:transparent; color:#666; opacity:1; box-shadow:none; font-family:var(--cp-font-ui); font-size:.875rem; font-weight:400; cursor:default; }
.cp-client-bar__service button span { padding:2px 6px; border-radius:4px; background:#f0f0eb; color:#555; font-size:.75rem; }
.cp-client-bar__service button:disabled { opacity:1!important; cursor:default!important; }
.cp-client-bar a:focus-visible,.cp-content-breadcrumbs a:focus-visible,.cp-content-tags a:focus-visible { outline:2px solid #111; outline-offset:4px; }

.cp-content-single,.cp-content-archive { padding-block:36px; }
.cp-content-single article.container { max-width:1040px; }
.cp-content-single__header { max-width:none; margin-bottom:24px; }
.cp-content-breadcrumbs { margin:0 0 20px; padding:12px 16px; border:1px solid #e2e2dc; border-radius:10px; background:#efefe9; color:#444; }
.cp-content-breadcrumbs ol { display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; margin:0; padding:0; list-style:none; }
.cp-content-breadcrumbs li { display:flex; align-items:center; gap:12px; min-width:0; font-family:var(--cp-font-ui); font-size:.875rem; line-height:1.5; }
.cp-content-breadcrumbs li+li::before { content:'/'; color:#74746c; }
.cp-content-breadcrumbs a,.cp-content-breadcrumbs span { color:inherit; background:transparent; }
.cp-content-breadcrumbs a:hover { text-decoration:underline; }
.cp-content-single .cp-content-single__header h1,.cp-content-archive .cp-content-archive__hero h1 { margin:0 0 16px; font-family:var(--cp-font-display); font-size:clamp(1.625rem,2.6vw,2.375rem); line-height:1.25; letter-spacing:-.015em; overflow-wrap:anywhere; text-wrap:pretty; }
.cp-content-single__body { padding:clamp(20px,3vw,36px); overflow-wrap:anywhere; }
.cp-content-single__body :is(h1,h2),.cp-case-story h2 { font-family:var(--cp-font-display); font-size:clamp(1.375rem,2vw,1.75rem)!important; line-height:1.35!important; letter-spacing:0; }
.cp-content-single__body :is(h3,h4,h5,h6),.cp-case-story h3 { font-size:clamp(1.125rem,1.6vw,1.375rem)!important; line-height:1.4!important; letter-spacing:0; }
.cp-content-single__body :is(p,li),.cp-case-story p { font-family:var(--cp-font-ui); font-size:1rem; line-height:1.75; }
.cp-content-single__body img { max-width:100%; height:auto; }
.cp-content-single__body figure { max-width:100%; margin-inline:0; }
.cp-content-single__body .wp-block-table { overflow-x:auto; }
.cp-content-single__body :is(pre,iframe) { max-width:100%; }
.cp-content-single__body pre { overflow-x:auto; }
.cp-content-card p { font-size:1rem; line-height:1.6; }
.cp-content-tags a,.cp-content-filters a { font-size:.875rem; padding:7px 12px; background:#efefe9; color:#333; }
.cp-content-filters { flex-wrap:wrap; }
.cp-case-facts span,.cp-case-gallery__grid figcaption,.cp-case-structured__head,.cp-case-control li { font-size:.875rem; line-height:1.5; }
.cp-case-structured__row { font-size:1rem; overflow-wrap:anywhere; }
.cp-case-story,.cp-case-story>section { min-width:0; max-width:100%; }
.cp-knowledge-hub { background:#f5f5f1; border-block:1px solid #e4e4dc; }
.cp-knowledge-hub .section-heading h2 { font-size:clamp(1.5rem,2.4vw,2.125rem); line-height:1.3; }
.cp-knowledge-hub__links a { display:inline-flex; padding-block:10px; font-size:1rem; font-weight:700; text-decoration:underline; text-underline-offset:4px; }

/* Existing global form.cart flex rule broke the table + result flow for variants. */
.single-product div.product form.cart.variations_form { display:block; min-width:0; padding:18px; border:1px solid #ddd; border-radius:12px; background:#fafaf7; }
.cp-variation-heading strong { font-family:var(--cp-font-ui); font-size:1.0625rem; }
.cp-variation-heading p { margin:6px 0 16px; font-family:var(--cp-font-ui); font-size:.875rem; line-height:1.5; color:#555; }
.single-product div.product form.cart .variations { width:100%; margin-bottom:14px; border:0; table-layout:fixed; }
.single-product div.product form.cart .variations :is(th,td) { display:block; width:100%; padding:0 0 8px; text-align:left; background:transparent; border:0; }
.single-product div.product form.cart .variations label { font-family:var(--cp-font-ui); font-size:.9375rem; font-weight:700; }
.single-product div.product form.cart .variations select { display:block; width:100%; max-width:100%; min-height:46px; margin:0; padding:10px 32px 10px 12px; border:1px solid #999; border-radius:8px; background-color:#fff; color:#111; font-family:var(--cp-font-ui); font-size:1rem; }
.single-product div.product form.cart .variations select:focus-visible { outline:2px solid #111; outline-offset:2px; }
.single-product div.product form.cart .reset_variations { display:inline-block; margin-top:10px; color:#444; font-size:.875rem; text-decoration:underline; }
.single-product div.product .single_variation_wrap { min-width:0; }
.single-product div.product .woocommerce-variation-add-to-cart { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.single-product div.product form.cart .single_add_to_cart_button.disabled,.single-product div.product form.cart .single_add_to_cart_button:disabled { background:#e5e5df!important; color:#555!important; opacity:1; }
.single-product div.product .woocommerce-variation-description { font-size:1rem; line-height:1.6; }
.single-product div.product .woocommerce-variation-price { margin-block:12px; }
.single-product div.product .woocommerce-variation-availability .stock { font-size:1rem; }

/* Readable product copy, while technical names remain compact. */
.single-product div.product .summary .cp-product-short-description,.single-product div.product .summary .cp-product-short-description p,
.single-product .woocommerce-tabs .panel p,.single-product .woocommerce-tabs .panel li { font-size:1rem!important; line-height:1.65!important; }
.single-product .cp-product-keyfacts span { font-size:.75rem; }
.single-product .cp-product-keyfacts strong,.single-product .cp-product-trust strong { font-size:.875rem; line-height:1.5; }
.single-product .cp-product-trust span,.single-product .cp-compatibility-help span { font-size:.875rem; line-height:1.5; }
.single-product .cp-compatibility-help strong { font-size:1rem; line-height:1.5; }
.single-product div.product>*,.single-product .cp-compatibility-help>* { min-width:0; }
.single-product .cp-compatibility-help .btn { white-space:normal; overflow-wrap:anywhere; text-align:center; }
.cp-product-equipment.single-product div.product { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:32px; }
.cp-product-equipment.single-product div.product .summary .product_title { font-size:clamp(1.5rem,2vw,2rem)!important; line-height:1.25!important; }
.cp-product-equipment .woocommerce-product-gallery__image img { max-height:580px; object-fit:contain; }
.cp-equipment-details { grid-column:1/-1; min-width:0; padding-top:20px; border-top:1px solid #e4e4dc; }
.cp-equipment-details h2 { font-size:1.625rem; line-height:1.35; }
.cp-equipment-details h3 { font-size:1.125rem; line-height:1.4; }
.cp-equipment-details__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.cp-equipment-details__grid>div { min-width:0; padding:20px; background:#f7f7f3; border-radius:12px; }
.cp-equipment-details p { margin:0; font-size:1rem; line-height:1.65; overflow-wrap:anywhere; }
@media(max-width:980px) {
 .cp-client-bar__inner { flex-wrap:wrap; }
 .cp-client-bar__service { gap:8px 16px; }
 .cp-product-equipment.single-product div.product { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:1100px) {
 .single-product div.product { grid-template-columns:minmax(0,1fr); }
 .single-product .cp-compatibility-help { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:620px) {
 .cp-client-bar__inner { gap:2px; padding-block:6px; }
 .cp-client-bar__knowledge,.cp-client-bar__service { width:100%; justify-content:space-between; gap:4px 12px; }
 .cp-client-bar__service button { flex-wrap:wrap; gap:4px; font-size:.8125rem; }
 .cp-content-single,.cp-content-archive { padding-block:24px; }
 .cp-content-breadcrumbs { padding:10px 12px; }
 .cp-content-single__body { padding:20px; }
 .cp-equipment-details__grid { grid-template-columns:minmax(0,1fr); }
 .single-product div.product form.cart.variations_form { padding:14px; }
 .single-product div.product .woocommerce-variation-add-to-cart .single_add_to_cart_button { flex:1; }
}

/* 3.17: compact header actions and a single content-hub entry in navigation. */
.header-center { display:grid; min-width:0; gap:7px; }
.header-center .header-search { width:100%; }
.header-service-shortcuts { display:flex; justify-content:center; align-items:center; gap:10px 22px; min-height:22px; }
.header-service-shortcuts button,
.mobile-service-shortcuts button { display:inline-flex; align-items:center; gap:6px; margin:0; padding:0; border:0; background:transparent; color:#c8c8c3; box-shadow:none; opacity:1!important; font-family:var(--cp-font-ui); font-size:.75rem; line-height:1.25; cursor:default!important; }
.header-service-shortcuts button>span { color:var(--cp-yellow); font-size:.95rem; font-weight:900; }
.header-service-shortcuts small,
.mobile-service-shortcuts small { padding:2px 6px; border:1px solid #454545; border-radius:999px; background:#242424; color:#aaa; font-size:.625rem; line-height:1.2; }
.mobile-service-shortcuts { display:none; }
.mobile-nav-tools { display:none; }
.main-nav__list li:focus-within>.sub-menu { display:block; }
.main-nav__list .sub-menu { min-width:210px; }

/* The trust strip below repeats the proof points, so the hero can stay focused. */
.hero--v144 { padding:24px 0 0; }
.hero-v144__grid { grid-template-columns:minmax(430px,.82fr) minmax(560px,1.18fr); gap:22px; min-height:480px; }
.hero-v144__content { padding:16px 0 28px; }
.hero-v144__content h1 { max-width:560px!important; font-size:clamp(2.3rem,2.65vw,3.2rem)!important; line-height:1.04!important; letter-spacing:-.025em!important; }
.hero-v144__checks { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 16px; margin:18px 0 14px!important; }
.hero-v144__lead { margin-bottom:18px; }
.hero-v144__actions { gap:10px; }
.hero-v144__actions .btn { padding:14px 18px; font-size:.9rem; white-space:nowrap; }
.hero-v144__visual { align-self:stretch; height:480px; overflow:visible; border-radius:0; }
.hero-v144__scene { display:block; width:100%; height:100%; object-fit:contain; object-position:center bottom; }

/* Crisp bundled illustrations replace cropped fragments from the early concept. */
.service-v150__image img,
.services-overview__image img,
.service-landing__visual>img,
.popular-v160__image img { image-rendering:auto; }
.popular-v160__image img { width:92%; filter:drop-shadow(0 13px 16px rgba(0,0,0,.45)); }

@media(max-width:1180px) {
 .hero-v144__grid { grid-template-columns:minmax(390px,.9fr) minmax(460px,1.1fr); min-height:430px; }
 .hero-v144__visual { height:430px; }
 .hero-v144__content h1 { font-size:clamp(2.35rem,4vw,3.25rem)!important; }
}
@media(max-width:980px) {
 .header-center { display:none; }
 .main-nav { transform:none; visibility:hidden; clip-path:inset(0 0 0 100%); pointer-events:none; }
 .main-nav.is-open { visibility:visible; clip-path:inset(0); pointer-events:auto; }
 .mobile-nav-tools { display:grid; gap:10px; margin-bottom:14px; }
 .mobile-nav-search { display:block; width:100%; }
 .mobile-nav-search .search-form { position:relative; display:flex; width:100%; height:50px; overflow:hidden; border:1px solid #454545; border-radius:12px; background:#fff; }
 .mobile-nav-search .search-form label { display:block; flex:1 1 auto; min-width:0; }
 .mobile-nav-search .search-field { width:100%; height:100%; padding:0 66px 0 16px; border:0; border-radius:0; background:#fff; color:#171717; font-size:.88rem; outline:0; }
 .mobile-nav-search .search-field:focus { box-shadow:inset 0 0 0 2px var(--cp-yellow); }
 .mobile-nav-search .search-submit { position:absolute; top:0; right:0; bottom:0; display:grid; place-items:center; width:56px; min-width:56px; height:100%; padding:0; border:0; border-radius:0; background:var(--cp-yellow); color:#111; font-size:1.1rem; font-weight:950; cursor:pointer; }
 .mobile-service-shortcuts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:0; padding:0; border:0; background:transparent; }
 .mobile-service-shortcuts button { display:grid; grid-template-columns:22px minmax(0,1fr); grid-template-areas:"icon title" "icon status"; gap:3px 8px; align-items:center; min-height:62px; padding:10px 11px; border:1px solid #393939; border-radius:11px; background:#1b1b1b; color:#ddd; text-align:left; }
 .mobile-service-shortcuts button>span:first-child { grid-area:icon; color:var(--cp-yellow); font-size:1.05rem; font-weight:950; text-align:center; }
 .mobile-service-shortcuts button>span:nth-child(2) { grid-area:title; min-width:0; font-size:.72rem; font-weight:850; line-height:1.2; }
 .mobile-service-shortcuts button>small { grid-area:status; justify-self:start; padding:1px 6px; font-size:.55rem; }
 .hero-v144__grid { grid-template-columns:minmax(0,1fr); min-height:0; }
 .hero-v144__content { padding-bottom:8px; }
 .hero-v144__visual { height:360px; }
 .hero-v144__scene { object-fit:contain; }
}
@media(max-width:620px) {
 .mobile-service-shortcuts { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .service-landing__split>div { min-width:0; overflow-wrap:anywhere; }
 .hero--v144 { padding-top:30px; }
 .hero-v144__content h1 { font-size:clamp(2rem,9vw,2.65rem)!important; }
 .hero-v144__checks { margin-top:18px!important; }
 .hero-v144__checks { grid-template-columns:minmax(0,1fr); }
 .hero-v144__visual { height:245px; margin-top:8px; }
 .hero-v144__actions .btn { width:100%; white-space:normal; }
}
@media(max-width:350px) {
 .mobile-service-shortcuts { grid-template-columns:minmax(0,1fr); }
}
