@charset "UTF-8";

/* Product directory and detail: the same material-led visual language as the homepage. */
body.zm-product-page {
  --c-primary: #272c30;
  --c-primary-hover: #3b464d;
  --c-accent: #ae2938;
  --c-accent-hover: #92202e;
  --c-bg: #fff;
  --c-bg-alt: #f3f5f6;
  --c-text: #272c30;
  --c-muted: #626c72;
  --c-border: #d9dfe2;
  background: #fff;
  color: #272c30;
  font-family: "ZM MiSans", "ZM Site Sans", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-weight: 400;
}
body.zm-product-page .baseDiv { width: min(1280px, calc(100% - 112px)); max-width: none; margin-inline: auto; padding-inline: 0; }
body.zm-product-page main { min-width: 0; }
body.zm-product-page .product-lobby { display: block; }
body.zm-product-page .product-detail-view { display: none; }
html.has-product-id body.zm-product-page .product-lobby { display: none; }
html.has-product-id body.zm-product-page .product-detail-view { display: block; }
body.zm-product-page :where(h1, h2, h3, h4, strong, th) { font-weight: 500; }

/* The catalogue shares the homepage's full-width material footage and light copy fade. */
body.zm-product-page .product-material-flow { --product-hero-height: 660px; --product-hero-top: 93px; }
body.zm-product-page .product-catalog-hero { position: relative; isolation: isolate; min-height: var(--product-hero-height); overflow: hidden; background: #e9ecee; }
body.zm-product-page .product-catalog-hero::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(244,246,247,.94) 0%, rgba(244,246,247,.8) 27%, rgba(244,246,247,.2) 53%, rgba(244,246,247,0) 70%); pointer-events: none; }
body.zm-product-page .product-catalog-media { position: absolute; z-index: -2; inset: 0; height: 100%; pointer-events: none; }
body.zm-product-page .product-catalog-media img,
body.zm-product-page .product-catalog-media video { width: 100%; height: 100%; object-position: center; }
body.zm-product-page .product-catalog-hero-inner { display: flex; align-items: center; min-height: inherit; padding-block: 45px; }
body.zm-product-page .product-catalog-copy { position: relative; width: min(600px, 65%); }
body.zm-product-page .product-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; margin-bottom: 42px; color: #626c72; font-size: 13px; line-height: 1.8; }
body.zm-product-page .product-breadcrumb a:hover { color: #ae2938; }
body.zm-product-page #lobbyTitle { margin: 0; font-size: clamp(42px, 4vw, 58px); line-height: 1.35; letter-spacing: -.025em; font-weight: 500; }
body.zm-product-page .product-catalog-subtitle { margin-top: 20px; font-size: 25px; line-height: 1.65; letter-spacing: -.015em; }
body.zm-product-page .product-catalog-lead { max-width: 38ch; margin-top: 21px; color: #626c72; font-size: 15px; line-height: 1.95; }
body.zm-product-page .product-catalog-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 27px; margin-top: 35px; }
body.zm-product-page .product-directory { padding-block: 62px 43px; }
body.zm-product-page .product-directory-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 32px; margin-bottom: 29px; }
body.zm-product-page .product-directory-heading h2 { font-size: 31px; line-height: 1.5; letter-spacing: -.02em; }
body.zm-product-page .product-directory-heading p { max-width: 48ch; color: #626c72; font-size: 14px; line-height: 1.9; }
body.zm-product-page .product-series-nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; border-top: 1px solid #d9dfe2; }
body.zm-product-page .product-series-nav a { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 7px 12px; align-items: center; padding-block: 22px; border-bottom: 1px solid #d9dfe2; font-size: 15px; line-height: 1.75; }
body.zm-product-page .product-series-nav small { grid-column: 1; color: #626c72; font-size: 12px; }
body.zm-product-page .product-series-nav a > span:last-child { grid-column: 2; grid-row: 1 / 3; color: #626c72; font-size: 19px; }
body.zm-product-page .product-series-nav a:hover { color: #ae2938; }

@supports (clip-path: inset(0)) {
  @media (min-width: 761px) and (prefers-reduced-motion: no-preference) {
    body.zm-product-page .product-material-flow { position: relative; isolation: isolate; clip-path: inset(calc(0px - var(--product-hero-top)) 0 0); }
    body.zm-product-page .product-material-flow > .product-catalog-hero { isolation: auto; overflow: visible; background: transparent; }
    body.zm-product-page .product-catalog-hero > .product-catalog-media { position: fixed; inset: 0 0 auto; height: max(calc(var(--product-hero-height) + var(--product-hero-top)), 100lvh); }
    body.zm-product-page .product-catalog-surface { position: relative; background: rgba(247,249,250,.68); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); border-top: 1px solid rgba(255,255,255,.7); }
    body.zm-product-page .product-series-nav { padding-inline: 24px; background: rgba(255,255,255,.72); }
    body.zm-product-page .lobby-product-grid { padding-inline: 24px; background: rgba(255,255,255,.86); }
    body.zm-product-page .product-series-image { isolation: isolate; }
    body.zm-product-page :is(.product-directory-heading p, .product-series-nav small, .product-series-nav a > span:last-child, .lobby-group-copy > span, .lobby-group-count) { color: #465158; }
  }
}

/* Each series has one substantial image and a concise, fully visible product directory. */
body.zm-product-page .lobby-groups { padding-top: 0; }
body.zm-product-page .lobby-group { padding-block: 59px 80px; border-bottom: 1px solid #d9dfe2; }
body.zm-product-page .lobby-group:last-child { border-bottom: 0; }
body.zm-product-page .lobby-group-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 38px; margin-bottom: 34px; }
body.zm-product-page .lobby-group-copy { min-width: 0; }
body.zm-product-page .lobby-group-copy h2 { max-width: 32ch; font-size: 32px; line-height: 1.55; font-weight: 500; letter-spacing: -.02em; }
body.zm-product-page .lobby-group-copy > span { display: block; max-width: 64ch; margin-top: 12px; color: #626c72; font-size: 14px; line-height: 1.95; }
body.zm-product-page .lobby-group-count { display: flex; flex-shrink: 0; align-items: baseline; gap: 5px; padding-top: 12px; color: #626c72; white-space: nowrap; }
body.zm-product-page .lobby-group-count strong { font-size: 17px; font-weight: 400; }
body.zm-product-page .lobby-group-count span { font-size: 12px; }
body.zm-product-page .product-series-layout { display: grid; grid-template-columns: minmax(0, .83fr) minmax(0, 1.17fr); gap: 57px; align-items: start; }
body.zm-product-page .product-series-image { position: sticky; top: 127px; margin: 0; aspect-ratio: .94; overflow: hidden; background: #f3f5f6; }
body.zm-product-page .product-series-image img { width: 100%; height: 100%; max-width: none; object-fit: cover; }
body.zm-product-page #catalog-box .product-series-image img { object-fit: contain; padding: 31px; }
body.zm-product-page .lobby-product-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 30px; border-top: 1px solid #d9dfe2; }
body.zm-product-page .lobby-product-card { display: block; min-width: 0; padding-block: 23px 24px; border: 0; border-bottom: 1px solid #d9dfe2; border-radius: 0; background: transparent; box-shadow: none; text-decoration: none; color: #272c30; transition: none; }
body.zm-product-page .lobby-product-card:hover { transform: none; background: transparent; box-shadow: none; border-color: #d9dfe2; }
body.zm-product-page .lobby-card-body { display: flex; height: 100%; flex-direction: column; padding: 0; }
body.zm-product-page .lobby-card-body h3 { margin: 0; color: #272c30; font-size: 18px; line-height: 1.65; font-weight: 500; letter-spacing: -.012em; }
body.zm-product-page .lobby-product-card:hover h3 { color: #ae2938; }
body.zm-product-page .product-translation { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
body.zm-product-page .lobby-card-desc { margin: 12px 0 0; color: #626c72; font-size: 13px; line-height: 1.9; }
body.zm-product-page .product-item-note { display: block; margin-top: 8px; color: #626c72; font-size: 12px; line-height: 1.8; }
body.zm-product-page .lobby-card-link { display: block; align-self: flex-start; margin-top: auto; padding-top: 18px; border: 0; color: #272c30; font-size: 12px; line-height: 1.8; font-weight: 400; }
body.zm-product-page .lobby-product-card:hover .lobby-card-link { color: #ae2938; }
body.zm-product-page .lobby-rfq-cta { display: flex; align-items: center; justify-content: space-between; gap: 48px; margin: 13px 0 88px; padding: 44px 42px; border: 0; border-radius: 0; background: #f3f5f6; color: #272c30; box-shadow: none; }
body.zm-product-page .lobby-rfq-cta h2 { margin: 0; font-size: 28px; line-height: 1.6; font-weight: 500; letter-spacing: -.02em; }
body.zm-product-page .lobby-rfq-cta > div > span { display: block; max-width: 62ch; margin-top: 12px; color: #626c72; font-size: 14px; line-height: 1.95; }
body.zm-product-page .lobby-rfq-actions { display: flex; flex-shrink: 0; align-items: center; flex-wrap: wrap; gap: 19px; }
body.zm-product-page :is(.lobby-btn-primary, .btn-primary-rfq, .btn-submit-rfq) { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 11px 23px; border: 1px solid #ae2938; border-radius: 0; background: #ae2938; color: #fff; font-family: inherit; font-size: 14px; line-height: 1.8; font-weight: 500; box-shadow: none; cursor: pointer; }
body.zm-product-page :is(.lobby-btn-primary, .btn-primary-rfq, .btn-submit-rfq):hover { background: #92202e; border-color: #92202e; color: #fff; transform: none; box-shadow: none; }
body.zm-product-page .lobby-btn-secondary { padding-block: 8px; border: 0; color: #272c30; font-size: 14px; font-weight: 400; font-variant-numeric: tabular-nums; }
body.zm-product-page .lobby-btn-secondary:hover { color: #ae2938; }

/* Detail: image and decision information first, followed by complete technical tables. */
body.zm-product-page .detail-crumbs { padding-block: 29px 25px; color: #626c72; font-size: 13px; line-height: 1.9; }
body.zm-product-page .detail-crumbs .baseDiv { display: flex; flex-wrap: wrap; gap: 9px; }
body.zm-product-page .detail-crumbs a:hover { color: #ae2938; }
body.zm-product-page .detail-hero { padding-block: 8px 75px; background: #fff; }
body.zm-product-page .detail-hero-grid { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr); align-items: start; gap: 64px; }
body.zm-product-page .detail-photo-box { position: relative; min-width: 0; min-height: 530px; padding: 44px 40px 90px; border: 0; border-radius: 0; background: #f3f5f6; box-shadow: none; }
body.zm-product-page .detail-main-img { width: 100%; height: 420px; max-height: none; object-fit: contain; }
body.zm-product-page .product-data-label { display: none; }
body.zm-product-page .detail-3d-btn { position: absolute; inset: auto auto 26px 30px; min-height: 42px; width: auto; padding: 8px 16px; border: 1px solid #bcc6cc; border-radius: 0; background: #fff; color: #272c30; font-size: 13px; font-weight: 400; box-shadow: none; backdrop-filter: none; }
body.zm-product-page .detail-3d-btn:hover { border-color: #ae2938; color: #ae2938; background: #fff; transform: none; box-shadow: none; }
body.zm-product-page .detail-info { min-width: 0; padding-top: 12px; }
body.zm-product-page .detail-title { margin: 0; color: #272c30; font-size: clamp(30px, 3.2vw, 44px); line-height: 1.5; font-weight: 500; letter-spacing: -.022em; }
body.zm-product-page .detail-en-title { margin-top: 14px; color: #626c72; font-size: 14px; line-height: 1.8; font-weight: 400; overflow-wrap: anywhere; }
body.zm-product-page .product-detail-category { margin-top: 6px; color: #626c72; font-size: 13px; line-height: 1.9; }
body.zm-product-page .detail-desc { margin-top: 23px; margin-bottom: 25px; padding: 0; border: 0; color: #515e66; font-size: 15px; line-height: 1.95; }
body.zm-product-page .detail-specs-box { margin: 0; padding-block: 21px 24px; border: 0; border-top: 1px solid #d9dfe2; border-bottom: 1px solid #d9dfe2; border-radius: 0; background: transparent; }
body.zm-product-page .detail-specs-header { display: flex; align-items: center; gap: 9px; margin-bottom: 11px; color: #272c30; font-size: 14px; line-height: 1.8; font-weight: 500; }
body.zm-product-page .detail-specs-header svg { color: #626c72; }
body.zm-product-page .detail-specs-content { color: #515e66; font-size: 14px; line-height: 2; }
body.zm-product-page .detail-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 27px; }
body.zm-product-page .btn-secondary-phone { padding-block: 9px; border: 0; border-radius: 0; background: transparent; color: #272c30; font-size: 13px; line-height: 1.85; font-weight: 400; box-shadow: none; font-variant-numeric: tabular-nums; }
body.zm-product-page .btn-secondary-phone:hover { background: transparent; color: #ae2938; }
body.zm-product-page .product-detail-support { padding-block: 39px 37px; background: #f3f5f6; }
body.zm-product-page .detail-meta-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; margin: 0; }
body.zm-product-page .detail-meta-item { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.zm-product-page .detail-meta-item:hover { border: 0; box-shadow: none; }
body.zm-product-page .meta-k { margin-bottom: 9px; color: #626c72; font-size: 13px; line-height: 1.9; }
body.zm-product-page .detail-meta-item .meta-v { color: #272c30; font-size: 14px; line-height: 1.95; font-weight: 400; }
body.zm-product-page .geo-ai-callout { margin-top: 27px; padding-top: 24px; border: 0; border-top: 1px solid #d9dfe2; background: transparent; color: #626c72; font-size: 13px; line-height: 1.95; }
body.zm-product-page .geo-ai-callout strong { display: block; margin-bottom: 7px; color: #272c30; font-weight: 500; }
body.zm-product-page .detail-specs-section { padding-block: 77px 91px; }
body.zm-product-page .section-head-h2 { display: block; margin-bottom: 31px; color: #272c30; font-size: 33px; line-height: 1.55; font-weight: 500; letter-spacing: -.02em; }
body.zm-product-page .section-head-h2::before { display: none; }
body.zm-product-page .spec-table-wrap { border: 0; border-radius: 0; background: #fff; box-shadow: none; }
body.zm-product-page .b2b-spec-table { width: 100%; border-collapse: collapse; border-spacing: 0; border-top: 1px solid #bcc6cc; font-variant-numeric: tabular-nums; }
body.zm-product-page .b2b-spec-table th { width: 185px; padding: 18px 20px; border: 0; border-bottom: 1px solid #d9dfe2; background: #f3f5f6; color: #272c30; text-align: left; vertical-align: top; font-size: 14px; line-height: 1.95; font-weight: 500; }
body.zm-product-page .b2b-spec-table td { padding: 18px 22px; border: 0; border-bottom: 1px solid #d9dfe2; color: #272c30; vertical-align: top; font-size: 14px; line-height: 1.95; overflow-wrap: anywhere; }
body.zm-product-page .b2b-spec-table :is(td, th, td span, td strong, td a, td small) { color: #272c30 !important; font-family: inherit; }
body.zm-product-page .b2b-spec-table :is(strong, b) { font-weight: 500 !important; }
body.zm-product-page .b2b-spec-table td a:hover { color: #ae2938 !important; text-decoration: underline; }
body.zm-product-page .spec-table-wrap > div { margin-top: 24px !important; padding: 24px 26px !important; border: 0 !important; border-radius: 0 !important; background: #f3f5f6 !important; color: #515e66 !important; font-size: 14px !important; line-height: 2 !important; }
body.zm-product-page :is(.material-compare-wrap, .all-products-matrix-wrap) { margin-block: 62px 0 !important; }
body.zm-product-page :is(.material-compare-wrap, .all-products-matrix-wrap) > h3 { margin: 0 0 14px; color: #272c30; font-size: 24px; line-height: 1.6; font-weight: 500; }
body.zm-product-page :is(.material-compare-wrap, .all-products-matrix-wrap) > p { max-width: 82ch; margin-bottom: 24px !important; color: #626c72 !important; font-size: 14px !important; line-height: 1.95 !important; }
body.zm-product-page .product-table-scroll { overflow-x: auto; border: 0 !important; border-radius: 0 !important; scrollbar-color: #929ba1 #f3f5f6; }
body.zm-product-page .product-table-scroll .b2b-spec-table { min-width: 1050px; }
body.zm-product-page .all-products-matrix-wrap .b2b-spec-table { min-width: 1150px; }
body.zm-product-page .product-table-scroll .b2b-spec-table th { width: auto; padding: 17px 15px !important; font-size: 13px; }
body.zm-product-page .product-table-scroll .b2b-spec-table td { padding: 17px 15px !important; font-size: 13px; }
body.zm-product-page .product-table-scroll .b2b-spec-table span { padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
body.zm-product-page .detail-features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 38px; margin-top: 68px; }
body.zm-product-page .feature-box { padding: 24px 0 0; border: 0; border-top: 1px solid #d9dfe2; border-radius: 0; background: transparent; box-shadow: none; }
body.zm-product-page .feature-box h4 { margin: 0 0 12px; color: #272c30; font-size: 20px; line-height: 1.6; font-weight: 500; }
body.zm-product-page .feature-box p { margin: 0; color: #626c72; font-size: 14px; line-height: 1.95; }
body.zm-product-page .detail-rfq-box { margin-top: 73px; padding: 43px 44px 45px; border: 0; border-radius: 0; background: #f3f5f6; color: #272c30; box-shadow: none; }
body.zm-product-page .detail-rfq-box h3 { margin: 0; color: #272c30 !important; font-size: 28px; line-height: 1.55; font-weight: 500; }
body.zm-product-page .detail-rfq-box > p { max-width: 75ch; margin-top: 14px; margin-bottom: 30px; color: #626c72 !important; font-size: 14px; line-height: 1.95; }
body.zm-product-page .rfq-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 21px 27px; }
body.zm-product-page .product-rfq-field { display: block; min-width: 0; }
body.zm-product-page .product-rfq-field > span { display: block; margin-bottom: 9px; color: #515e66; font-size: 13px; line-height: 1.8; }
body.zm-product-page .form-input-ctrl { width: 100%; min-width: 0; min-height: 47px; padding: 10px 13px; border: 1px solid #bcc6cc; border-radius: 0; background: #fff; color: #272c30; font-family: inherit; font-size: 15px; line-height: 1.75; }
body.zm-product-page .form-input-ctrl::placeholder { color: #626c72; opacity: 1; }
body.zm-product-page .form-input-ctrl[readonly] { background: #edf0f2; }
body.zm-product-page .btn-submit-rfq { width: auto; }

/* Existing 3D behavior is kept; only its surrounding chrome is simplified. */
body.zm-product-page .three-modal-backdrop { position: fixed; z-index: 9999; inset: 0; display: none; align-items: center; justify-content: center; background: rgba(39,44,48,.7); }
body.zm-product-page .three-modal-backdrop.active { display: flex; }
body.zm-product-page .three-modal-window { display: flex; flex-direction: column; width: min(1100px, 94vw); height: 84vh; overflow: hidden; border: 0; border-radius: 0; background: #fff; }
body.zm-product-page .three-modal-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 58px; padding: 10px 21px; border-bottom: 1px solid #d9dfe2; background: #f3f5f6; color: #272c30; }
body.zm-product-page #threeModalTitle { color: #272c30; font-size: 15px; line-height: 1.7; font-weight: 500; }
body.zm-product-page .three-modal-badge { display: none; }
body.zm-product-page .three-modal-close { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 38px; min-height: 38px; border: 0; background: transparent; color: #272c30; font-size: 29px; line-height: 1; font-weight: 400; cursor: pointer; }
body.zm-product-page .three-modal-close:hover { color: #ae2938; }
body.zm-product-page .three-modal-frame { flex: 1; width: 100%; min-height: 0; border: 0; background: #f3f5f6; }

@media (max-width: 1200px) {
  body.zm-product-page .product-material-flow { --product-hero-top: 87px; }
  body.zm-product-page .baseDiv { width: calc(100% - 80px); }
  body.zm-product-page .product-catalog-hero-inner,
  body.zm-product-page .detail-hero-grid { gap: 40px; }
  body.zm-product-page .product-series-layout { gap: 37px; }
  body.zm-product-page .lobby-product-grid { gap: 0 24px; }
  body.zm-product-page .lobby-rfq-cta { flex-direction: column; align-items: flex-start; gap: 27px; }
  body.zm-product-page .detail-photo-box { padding-inline: 30px; min-height: 500px; }
  body.zm-product-page .detail-main-img { height: 390px; }
}
@media (max-width: 1000px) {
  body.zm-product-page .product-material-flow { --product-hero-height: 610px; --product-hero-top: 81px; }
  body.zm-product-page #lobbyTitle { font-size: 45px; }
  body.zm-product-page .product-catalog-subtitle { font-size: 22px; }
  body.zm-product-page .product-catalog-actions { gap: 18px; }
  body.zm-product-page .product-breadcrumb { margin-bottom: 30px; }
  body.zm-product-page .product-directory-heading { display: block; }
  body.zm-product-page .product-directory-heading p { margin-top: 13px; }
  body.zm-product-page .product-series-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; }
  body.zm-product-page .lobby-group { padding-block: 46px 62px; }
  body.zm-product-page .lobby-group-copy h2 { font-size: 28px; }
  body.zm-product-page .product-series-layout { grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: 29px; }
  body.zm-product-page .product-series-image { aspect-ratio: .72; }
  body.zm-product-page .lobby-product-grid { gap: 0 20px; }
  body.zm-product-page .lobby-card-body h3 { font-size: 17px; }
  body.zm-product-page .lobby-card-desc { font-size: 12px; }
  body.zm-product-page .lobby-product-card { padding-block: 20px; }
  body.zm-product-page .detail-hero-grid { gap: 32px; }
  body.zm-product-page .detail-photo-box { min-height: 470px; padding-inline: 24px; }
  body.zm-product-page .detail-main-img { height: 360px; }
  body.zm-product-page .detail-title { font-size: 31px; }
  body.zm-product-page .detail-meta-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 27px 35px; }
  body.zm-product-page .detail-features { gap: 27px; }
}
@media (max-width: 760px) {
  body.zm-product-page .baseDiv { width: calc(100% - 48px); }
  body.zm-product-page .product-material-flow { --product-hero-height: 680px; }
  body.zm-product-page .product-catalog-hero-inner { display: block; padding-block: 29px 360px; }
  body.zm-product-page .product-catalog-copy { width: 100%; }
  body.zm-product-page .product-catalog-media { inset: auto 0 0; height: 405px; }
  body.zm-product-page .product-catalog-media img,
  body.zm-product-page .product-catalog-media video { object-position: 65% center; }
  body.zm-product-page .product-catalog-hero::before { background: linear-gradient(180deg, #eef1f3 0%, #eef1f3 39%, rgba(238,241,243,.6) 51%, rgba(238,241,243,0) 65%); }
  body.zm-product-page .product-breadcrumb { margin-bottom: 26px; font-size: 12px; }
  body.zm-product-page #lobbyTitle { font-size: 41px; }
  body.zm-product-page .product-catalog-subtitle { margin-top: 15px; font-size: 23px; }
  body.zm-product-page .product-catalog-lead { margin-top: 16px; font-size: 14px; }
  body.zm-product-page .product-catalog-actions { margin-top: 25px; gap: 24px; }
  body.zm-product-page .product-directory { padding-block: 42px 22px; }
  body.zm-product-page .product-directory-heading { margin-bottom: 25px; }
  body.zm-product-page .product-directory-heading h2 { font-size: 28px; }
  body.zm-product-page .product-series-nav { column-gap: 24px; }
  body.zm-product-page .product-series-nav a { padding-block: 18px; font-size: 14px; }
  body.zm-product-page .lobby-group-head { gap: 20px; margin-bottom: 26px; }
  body.zm-product-page .lobby-group-copy h2 { max-width: 24ch; font-size: 27px; }
  body.zm-product-page .lobby-group-copy > span { font-size: 13px; }
  body.zm-product-page .lobby-group-count { padding-top: 9px; }
  body.zm-product-page .product-series-layout { grid-template-columns: 1fr; gap: 28px; }
  body.zm-product-page .product-series-image { position: static; aspect-ratio: 1.4; }
  body.zm-product-page #catalog-box .product-series-image img { padding: 20px; }
  body.zm-product-page .lobby-product-grid { gap: 0 28px; }
  body.zm-product-page .lobby-card-desc { font-size: 13px; }
  body.zm-product-page .lobby-rfq-cta { margin-bottom: 63px; padding: 30px 27px; }
  body.zm-product-page .lobby-rfq-cta h2 { font-size: 25px; }
  body.zm-product-page .lobby-rfq-cta > div > span { font-size: 13px; }
  body.zm-product-page .detail-crumbs { padding-block: 23px 19px; font-size: 12px; }
  body.zm-product-page .detail-hero { padding-bottom: 47px; }
  body.zm-product-page .detail-hero-grid { grid-template-columns: 1fr; gap: 30px; }
  body.zm-product-page .detail-photo-box { min-height: 0; padding: 28px 26px 80px; }
  body.zm-product-page .detail-main-img { height: 335px; }
  body.zm-product-page .detail-3d-btn { inset: auto auto 22px 25px; }
  body.zm-product-page .detail-info { padding-top: 0; }
  body.zm-product-page .detail-title { font-size: 32px; }
  body.zm-product-page .detail-desc { font-size: 14px; }
  body.zm-product-page .detail-en-title { margin-top: 10px; font-size: 13px; }
  body.zm-product-page .product-detail-support { padding-block: 30px; }
  body.zm-product-page .detail-specs-section { padding-block: 49px 61px; }
  body.zm-product-page .section-head-h2 { margin-bottom: 25px; font-size: 28px; }
  body.zm-product-page .b2b-spec-table th { width: 135px; padding: 15px 13px; font-size: 13px; }
  body.zm-product-page .b2b-spec-table td { padding: 15px 16px; font-size: 13px; }
  body.zm-product-page :is(.material-compare-wrap, .all-products-matrix-wrap) { margin-top: 43px !important; }
  body.zm-product-page :is(.material-compare-wrap, .all-products-matrix-wrap) > h3 { font-size: 22px; }
  body.zm-product-page :is(.material-compare-wrap, .all-products-matrix-wrap) > p { font-size: 13px !important; }
  body.zm-product-page .detail-features { grid-template-columns: 1fr; gap: 24px; margin-top: 43px; }
  body.zm-product-page .feature-box { padding-top: 22px; }
  body.zm-product-page .detail-rfq-box { margin-top: 45px; padding: 30px 25px; }
  body.zm-product-page .detail-rfq-box h3 { font-size: 25px; }
  body.zm-product-page .detail-rfq-box > p { font-size: 13px; }
  body.zm-product-page .btn-submit-rfq { width: 100%; }
}
@media (max-width: 480px) {
  body.zm-product-page .product-material-flow { --product-hero-height: 650px; --product-hero-top: 75px; }
  body.zm-product-page .product-catalog-hero-inner { padding-bottom: 310px; }
  body.zm-product-page .product-catalog-media { height: 335px; }
  body.zm-product-page .product-catalog-hero::before { background: linear-gradient(180deg, #eef1f3 0%, #eef1f3 42%, rgba(238,241,243,.65) 55%, rgba(238,241,243,0) 69%); }
  body.zm-product-page .baseDiv { width: calc(100% - 44px); }
  body.zm-product-page #lobbyTitle { font-size: 37px; }
  body.zm-product-page .product-catalog-subtitle { font-size: 21px; }
  body.zm-product-page .product-catalog-lead { font-size: 13px; }
  body.zm-product-page .product-catalog-actions { gap: 22px; }
  body.zm-product-page .product-catalog-actions .mh-link { font-size: 12px; gap: 13px; }
  body.zm-product-page .product-directory-heading h2 { font-size: 26px; }
  body.zm-product-page .product-directory-heading p { font-size: 13px; }
  body.zm-product-page .product-series-nav { grid-template-columns: 1fr; gap: 0; }
  body.zm-product-page .product-series-nav a { grid-template-columns: minmax(0, 1fr) auto auto; gap: 14px; padding-block: 17px; font-size: 15px; }
  body.zm-product-page .product-series-nav small { grid-column: 2; }
  body.zm-product-page .product-series-nav a > span:last-child { grid-column: 3; grid-row: 1; }
  body.zm-product-page .lobby-group { padding-block: 37px 45px; }
  body.zm-product-page .lobby-group-head { display: block; margin-bottom: 23px; }
  body.zm-product-page .lobby-group-copy h2 { max-width: 100%; font-size: 25px; }
  body.zm-product-page .lobby-group-copy > span { margin-top: 11px; }
  body.zm-product-page .lobby-group-count { margin-top: 12px; padding: 0; }
  body.zm-product-page .lobby-group-count strong { font-size: 14px; }
  body.zm-product-page .product-series-layout { gap: 22px; }
  body.zm-product-page .product-series-image { aspect-ratio: 1.17; }
  body.zm-product-page .lobby-product-grid { grid-template-columns: 1fr; }
  body.zm-product-page .lobby-product-card { padding-block: 22px; }
  body.zm-product-page .lobby-card-body h3 { font-size: 19px; }
  body.zm-product-page .lobby-card-desc { margin-top: 10px; }
  body.zm-product-page .lobby-card-link { padding-top: 14px; }
  body.zm-product-page .lobby-rfq-cta { margin-top: 4px; padding: 27px 22px; }
  body.zm-product-page .lobby-rfq-cta h2 { font-size: 23px; }
  body.zm-product-page .lobby-rfq-actions { gap: 16px; }
  body.zm-product-page .lobby-btn-primary { font-size: 13px; padding-inline: 17px; }
  body.zm-product-page .lobby-btn-secondary { font-size: 13px; }
  body.zm-product-page .detail-photo-box { padding: 25px 22px 73px; }
  body.zm-product-page .detail-main-img { height: 285px; }
  body.zm-product-page .detail-3d-btn { inset: auto auto 20px 22px; font-size: 12px; }
  body.zm-product-page .detail-title { font-size: 29px; }
  body.zm-product-page .detail-meta-list { grid-template-columns: 1fr; gap: 22px; }
  body.zm-product-page .meta-k { margin-bottom: 5px; }
  body.zm-product-page .meta-v { font-size: 13px; }
  body.zm-product-page .detail-actions { gap: 18px; }
  body.zm-product-page .btn-primary-rfq { width: 100%; font-size: 13px; }
  body.zm-product-page .section-head-h2 { font-size: 25px; }
  body.zm-product-page .b2b-spec-table th { width: 103px; min-width: 103px; padding: 13px 11px; font-size: 12px; }
  body.zm-product-page .b2b-spec-table td { padding: 13px 12px; font-size: 12px; }
  body.zm-product-page .spec-table-wrap > div { padding: 20px !important; font-size: 13px !important; }
  body.zm-product-page :is(.material-compare-wrap, .all-products-matrix-wrap) > h3 { font-size: 20px; }
  body.zm-product-page .detail-rfq-box { padding: 27px 21px; }
  body.zm-product-page .detail-rfq-box h3 { font-size: 23px; }
  body.zm-product-page .rfq-form-grid { grid-template-columns: 1fr; gap: 18px; }
  body.zm-product-page .form-input-ctrl { font-size: 16px; }
  body.zm-product-page .btn-submit-rfq { padding-inline: 11px; font-size: 12px; }
}

/* Catalogue 3D entries reuse the product viewer without loading WebGL until requested. */
body.zm-product-page .product-series-preview { position: relative; display: block; width: 100%; height: 100%; padding: 0; border: 0; background: transparent; color: #272c30; font: inherit; text-align: left; cursor: pointer; }
body.zm-product-page .series-3d-label { position: absolute; inset: auto 20px 20px; display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 10px 15px; border: 1px solid #c4cdd2; background: rgba(255,255,255,.96); font-size: 14px; line-height: 1.7; }
body.zm-product-page .series-3d-label > span { margin-left: auto; }
body.zm-product-page .product-series-preview:hover .series-3d-label { border-color: #ae2938; color: #ae2938; }
body.zm-product-page .lobby-card-body h3 a { color: inherit; text-decoration: none; }
body.zm-product-page .lobby-card-body h3 a:hover { color: #ae2938; }
body.zm-product-page .lobby-card-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 14px; margin-top: auto; padding-top: 14px; }
body.zm-product-page .lobby-card-actions .lobby-card-link { display: inline-flex; align-items: center; align-self: auto; min-height: 44px; margin-top: 0; padding-top: 0; }
body.zm-product-page .lobby-3d-button { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; padding: 6px 12px; border: 1px solid #bcc6cc; background: #fff; color: #272c30; font: inherit; font-size: 12px; line-height: 1.7; white-space: nowrap; cursor: pointer; }
body.zm-product-page .lobby-3d-button:hover { border-color: #ae2938; color: #ae2938; }
body.zm-product-page :is(.product-series-preview, .lobby-3d-button, .lobby-card-link, .three-modal-close):focus-visible { outline: 2px solid #ae2938; outline-offset: 3px; }
body.zm-product-page .three-modal-close { min-width: 44px; min-height: 44px; }
body.zm-product-page .three-modal-header { flex-shrink: 0; }
@media (max-width: 760px) {
  body.zm-product-page .three-modal-window { width: 100%; height: 100dvh; }
  body.zm-product-page .three-modal-header { min-height: 64px; gap: 10px; padding: 8px 13px; }
  body.zm-product-page #threeModalTitle { font-size: 13px; }
  body.zm-product-page .series-3d-label { inset: auto 16px 16px; font-size: 13px; }
}
