/* Product navigation and the existing catalogue cards. */
body.zm-material-home .mh-header .mh-products-menu { display:flex; align-items:center; gap:1px; }
body.zm-material-home .mh-header .mh-products-toggle { display:inline-flex; align-items:center; justify-content:center; width:22px; min-height:36px; padding:0; border:0; background:transparent; color:#626c72; cursor:pointer; }
body.zm-material-home .mh-header .mh-products-toggle svg { width:12px; height:12px; transition:transform 140ms ease; }
body.zm-material-home .mh-header .mh-products-toggle[aria-expanded="true"] svg { transform:rotate(180deg); }
body.zm-material-home .mh-header .mh-products-flyout { position:fixed; z-index:100; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 24px; width:min(820px,calc(100vw - 48px)); max-height:min(65vh,520px); overflow-y:auto; margin:0; padding:14px 24px; border:1px solid #d9dfe2; background:#fff; color:#272c30; }
body.zm-material-home .mh-header .mh-products-flyout[hidden] { display:none !important; }
body.zm-material-home .mh-header .mh-products-flyout a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; margin:0; padding:12px 4px; border:0; border-bottom:1px solid #edf0f2; background:transparent; color:#272c30; font-size:14px; font-weight:400; line-height:1.65; text-decoration:none; white-space:normal; overflow-wrap:anywhere; }
body.zm-material-home .mh-header .mh-products-flyout a small { display:none; }
body.zm-material-home .mh-header .mh-products-flyout a > span { color:inherit; font:inherit; }
body.zm-material-home .mh-header .mh-products-flyout a > span:last-child { flex-shrink:0; color:#626c72; }
body.zm-material-home .mh-header .mh-products-flyout a:hover,
body.zm-material-home .mh-header .mh-products-flyout a:focus-visible { color:#ae2938; }
body.zm-material-home .mh-header .mh-products-toggle:focus-visible,
body.zm-material-home .mh-header .mh-products-flyout a:focus-visible { outline:2px solid #ae2938; outline-offset:3px; }
body.zm-product-page .lobby-card-more { margin:10px 0 0; color:#626c72; font-size:13px; line-height:1.9; }
body.zm-product-page .lobby-card-specs { margin:18px 0 0; border-top:1px solid #d9dfe2; font-size:13px; line-height:1.8; }
body.zm-product-page .lobby-card-specs > div { display:grid; grid-template-columns:minmax(88px,.34fr) minmax(0,1fr); gap:10px 18px; padding:10px 0; border-bottom:1px solid #e5e8ea; }
body.zm-product-page .lobby-card-specs dt { margin:0; color:#626c72; font-weight:400; }
body.zm-product-page .lobby-card-specs dd { margin:0; color:#272c30; overflow-wrap:anywhere; }
body.zm-product-page .lobby-spec-note { margin:13px 0 0; color:#626c72; font-size:12px; line-height:1.8; }
body.zm-product-page .lobby-rfq-cta .lobby-btn-secondary { border:0; background:transparent; color:#272c30; }
body.zm-product-page .lobby-rfq-cta .lobby-btn-secondary:hover { background:transparent; color:#ae2938; }
@media(max-width:1000px) {
 body.zm-material-home .mh-header .mh-nav.is-open { max-height:calc(100dvh - 80px); overflow-y:auto; overscroll-behavior:contain; }
 body.zm-material-home .mh-header .mh-products-menu { display:grid; grid-template-columns:minmax(0,1fr) 44px; }
 body.zm-material-home .mh-header .mh-products-toggle { width:44px; min-height:48px; }
 body.zm-material-home .mh-header .mh-products-flyout { position:static; grid-column:1 / -1; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; max-height:50vh; padding:0 12px; border:0; border-top:1px solid #d9dfe2; border-bottom:1px solid #d9dfe2; background:#f8fafb; }
 body.zm-material-home .mh-header .mh-products-flyout a { padding:12px 2px; font-size:14px; }
}
@media(max-width:480px) {
 body.zm-material-home .mh-header .mh-products-flyout { grid-template-columns:1fr; }
 body.zm-product-page .lobby-card-specs > div { grid-template-columns:minmax(80px,.32fr) minmax(0,1fr); gap:9px 12px; }
}
@media(prefers-reduced-motion:reduce) { body.zm-material-home .mh-header .mh-products-toggle svg { transition:none; } }

/* One product fills the existing right-hand panel; multi-product grids retain their layout. */
body.zm-product-page .lobby-product-grid > .lobby-product-card:only-child { grid-column:1 / -1; }
body.zm-product-page :is(.lobby-card-desc,.lobby-card-more) { max-width:70ch; }

/* A restrained frame separates catalogue photographs from the page surface. */
body.zm-product-page .product-catalog-surface .product-series-image { box-sizing:border-box; padding:6px; border:1px solid #d9dfe2; background:#fff; transition:border-color 180ms ease-out; }
body.zm-product-page .product-catalog-surface .product-series-preview { overflow:hidden; }
body.zm-product-page .product-catalog-surface .product-series-image img { display:block; transition:transform 240ms cubic-bezier(.16,1,.3,1); }
body.zm-product-page .product-catalog-surface .product-series-image:focus-within { border-color:#ae2938; }
@media (hover:hover) and (pointer:fine) {
 body.zm-product-page .product-catalog-surface .product-series-image:hover { border-color:#9da6ad; }
 body.zm-product-page .product-catalog-surface .product-series-preview:hover img { transform:scale(1.018); }
}
@media (prefers-reduced-motion:reduce) {
 body.zm-product-page .product-catalog-surface .product-series-image,
 body.zm-product-page .product-catalog-surface .product-series-image img { transition:none; }
 body.zm-product-page .product-catalog-surface .product-series-preview:hover img { transform:none; }
}

/* Keep the product return link beside the existing breadcrumbs. */
body.zm-cms-page .cms-product-navigation { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; }
body.zm-cms-page .cms-product-navigation .cms-breadcrumb { margin:0; }
body.zm-cms-page .cms-product-navigation { margin-bottom:36px; }
body.zm-cms-page .cms-product-return { display:inline-flex; align-items:center; gap:7px; min-height:44px; color:#626c72; font-size:14px; text-decoration:none; white-space:nowrap; }
body.zm-cms-page .cms-product-return svg { flex:none; }
body.zm-cms-page .cms-product-return:hover { color:#ae2938; text-decoration:underline; text-underline-offset:4px; }
body.zm-cms-page .cms-product-return:focus-visible { outline:2px solid #ae2938; outline-offset:3px; }

/* Controls stay inside the existing photograph; no thumbnail strip or caption. */
body.zm-product-page .product-series-image[data-carousel] { touch-action:pan-y; }
body.zm-product-page .product-carousel-arrow,
body.zm-product-page .product-carousel-pause { position:absolute; z-index:2; display:flex; align-items:center; justify-content:center; padding:0; border:0; border-radius:0; background:rgba(25,30,33,.66); color:#fff; cursor:pointer; }
body.zm-product-page .product-carousel-arrow { top:50%; transform:translateY(-50%); width:38px; height:52px; }
body.zm-product-page .product-carousel-arrow.is-previous { left:7px; }
body.zm-product-page .product-carousel-arrow.is-next { right:7px; }
body.zm-product-page .product-carousel-pause { right:14px; top:14px; width:32px; height:32px; }
body.zm-product-page .product-carousel-arrow:hover,
body.zm-product-page .product-carousel-pause:hover { background:#ae2938; }
body.zm-product-page .product-carousel-arrow:focus-visible,
body.zm-product-page .product-carousel-pause:focus-visible { outline:2px solid #fff; outline-offset:-4px; }
body.zm-product-page .product-carousel-ai { position:absolute; top:14px; left:14px; padding:3px 7px; background:rgba(25,30,33,.72); color:#fff; font-size:11px; line-height:1.5; pointer-events:none; }
body.zm-product-page .product-carousel-ai[hidden] { display:none; }
body.zm-product-page .product-carousel-announcement { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
body.zm-product-page .product-series-image[data-carousel] .product-series-preview:hover img[data-gallery-fit="contain"] { transform:none; }
body.zm-product-page #catalog-alloy_net { scroll-margin-top:110px; }
@media(max-width:760px) {
 body.zm-product-page .product-series-image[data-carousel] { position:relative; top:auto; }
 body.zm-product-page .product-carousel-arrow { width:44px; height:52px; }
 body.zm-product-page .product-carousel-pause { width:44px; height:44px; }
}

/* Company information occupies the existing image letterbox. */
body.zm-product-page .product-carousel-brand { position:absolute; inset:18px 20px; z-index:1; display:flex; flex-direction:column; justify-content:space-between; align-items:flex-start; pointer-events:none; }
body.zm-product-page .product-carousel-company { display:inline-flex; align-items:center; gap:9px; color:#455057; font-size:13px; line-height:1.5; }
body.zm-product-page .product-carousel-company::before { content:""; width:20px; height:2px; background:#ae2938; flex:none; }
body.zm-product-page .product-carousel-context { color:#788187; font-size:12px; line-height:1.5; letter-spacing:.06em; }
@media(max-width:760px) { body.zm-product-page .product-carousel-brand { inset:15px 17px; } body.zm-product-page .product-carousel-company { font-size:12px; } body.zm-product-page .product-carousel-context { font-size:11px; } }
