@import url("./assets/fonts/fonts.css?v=20260804-china-fonts1");

:root {
  --ink: #10295b;
  --ink-2: #173c7a;
  --accent: #245be8;
  --accent-dark: #1644bd;
  --cyan: #4fc9bf;
  --muted: #687b9b;
  --line: #dbe5f3;
  --paper: #f4f8fd;
  --white: #ffffff;
  --font: "IBM Plex Sans", "Noto Sans TC", system-ui, sans-serif;
  --shadow: 0 20px 55px rgba(25, 67, 137, .12);
  --radius: 20px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: #fbfdff; font-family: var(--font); }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
.sr-only { position: absolute!important; width: 1px!important; height: 1px!important; padding: 0!important; margin: -1px!important; overflow: hidden!important; clip: rect(0,0,0,0)!important; white-space: nowrap!important; border: 0!important; }
.shell { width: min(1220px, calc(100% - 48px)); margin-inline: auto; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 3px solid rgba(36,91,232,.35); outline-offset: 2px; }
.topbar { min-height: 36px; color: #4d5f7d; border-bottom: 1px solid #e6edf7; background: #f1f5fa; font-size: 11px; }
.topbar__inner { min-height: 36px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.topbar__links { display: flex; gap: 20px; }
.topbar a:hover { color: var(--accent); }
.site-header { position: sticky; z-index: 30; top: 0; background: rgba(255,255,255,.94); box-shadow: 0 5px 24px rgba(28,67,126,.06); backdrop-filter: blur(12px); }
.header__inner { height: 84px; display: flex; align-items: center; gap: 34px; }
.brand { display: inline-flex; align-items: center; gap: 10px; }
.brand__logo { width: 58px; height: 48px; object-fit: contain; }
.brand__logo--header { width: 260px; height: 45px; }
.brand__mobile-name { display: none; }
.brand strong { color: var(--ink); font-size: 20px; letter-spacing: .07em; }
.nav { display: flex; align-items: center; gap: 28px; margin-left: auto; font-size: 14px; font-weight: 600; }
.nav a { position: relative; padding: 31px 0; }
.nav a::after { content: ""; position: absolute; right: 0; bottom: 21px; left: 0; height: 3px; border-radius: 4px; background: linear-gradient(90deg,var(--accent),var(--cyan)); transform: scaleX(0); transition: .2s; }
.nav a:hover::after, .nav a.nav__active::after { transform: scaleX(1); }
.header__actions { display: flex; align-items: center; gap: 10px; }
.language-toggle { display: inline-grid; min-width: 44px; height: 40px; place-items: center; border: 1px solid #b9c9e4; border-radius: 999px; color: var(--ink); background: white; padding: 0 12px; font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; transition: .2s; }
.language-toggle:hover { border-color: var(--accent); color: var(--accent); background: #f4f8ff; }
.language-toggle:focus-visible { outline: 3px solid rgba(36,91,232,.22); outline-offset: 2px; }
.cart-link { position: relative; min-height: 40px; display: inline-flex; align-items: center; gap: 6px; border: 1px solid #b9c9e4; border-radius: 999px; color: var(--ink); background: white; padding: 0 10px; font-size: 11px; font-weight: 700; transition: .2s; white-space: nowrap; }
.cart-link:hover { border-color: var(--accent); color: var(--accent); background: #f4f8ff; }
.cart-link:focus-visible { outline: 3px solid rgba(36,91,232,.22); outline-offset: 2px; }
.cart-link__icon { font-size: 15px; line-height: 1; }
.cart-link b { min-width: 18px; height: 18px; display: inline-grid; place-items: center; border-radius: 999px; color: white; background: var(--accent); padding: 0 4px; font-size: 9px; }
.cart-toast { position: fixed; z-index: 80; right: 24px; bottom: 24px; max-width: min(390px,calc(100% - 32px)); border-radius: 13px; color: white; background: #173c7a; padding: 13px 16px; box-shadow: 0 18px 45px rgba(16,41,91,.25); font-size: 12px; line-height: 1.6; opacity: 0; pointer-events: none; transform: translateY(14px); transition: .2s ease; }
.cart-toast.is-visible { opacity: 1; transform: translateY(0); }
.quote-button { display: inline-flex; min-height: 42px; align-items: center; border-radius: 999px; color: white; background: var(--accent); padding: 0 18px; font-size: 12px; font-weight: 700; box-shadow: 0 8px 20px rgba(36,91,232,.2); }
.quote-button:hover, .button--primary:hover { background: var(--accent-dark); }
.menu-button { width: 42px; height: 42px; display: none; border: 1px solid var(--line); border-radius: 12px; color: var(--ink); background: white; font-size: 20px; }
.eyebrow { margin: 0 0 15px; color: var(--accent); font-size: 11px; font-weight: 700; letter-spacing: .16em; }
.button { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 999px; padding: 0 24px; font-weight: 700; }
.button--primary { color: white; background: var(--accent); }
.button--outline { color: var(--ink); border: 1px solid var(--line); background: white; }
.button--light { color: var(--accent); border: 1px solid #cbdaf1; background: white; }
.button--full { width: 100%; }
.section { padding: 100px 0; }
.section-heading h1, .section-heading h2 { margin: 0; font-size: clamp(36px, 4.2vw, 54px); line-height: 1.13; letter-spacing: -.04em; }
.section-heading--split { display: grid; grid-template-columns: 1fr .72fr; align-items: end; gap: 70px; margin-bottom: 46px; }
.section-heading--split > p { margin: 0; color: var(--muted); line-height: 1.85; }
.section-heading__side { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.section-heading__side p { margin: 0; color: var(--muted); line-height: 1.85; }
.home-pillars { display: flex; flex-wrap: wrap; gap: 9px; margin: 18px 0 0; padding: 0; list-style: none; }
.home-pillars a { display: inline-flex; align-items: center; min-height: 38px; border: 1px solid #c4d5ed; border-radius: 999px; color: var(--ink-2); background: rgba(255,255,255,.8); padding: 0 16px; font-size: 12px; font-weight: 700; transition: .2s; }
.home-pillars a:hover { border-color: var(--accent); color: var(--accent); background: #fff; }

.manual-hero { overflow: hidden; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 82% 12%,rgba(79,201,191,.2),transparent 27%),linear-gradient(145deg,#fff 0%,#edf4ff 68%,#e8f8f5 100%); }
.manual-hero__layout { min-height: 560px; display: grid; grid-template-columns: minmax(0,1.08fr) minmax(360px,.72fr); align-items: center; gap: 70px; padding-top: 70px; padding-bottom: 70px; }
.manual-hero h1 { max-width: 780px; margin: 0; font-size: clamp(46px,5.5vw,72px); line-height: 1.08; letter-spacing: -.055em; }
.manual-hero__copy > p:not(.eyebrow) { max-width: 730px; margin: 24px 0 0; color: var(--muted); font-size: 17px; line-height: 1.85; }
.manual-hero__stats { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 25px; }
.manual-hero__stats span { display: inline-flex; align-items: baseline; gap: 6px; border: 1px solid #c4d5ed; border-radius: 999px; color: #405a80; background: rgba(255,255,255,.78); padding: 8px 13px; font-size: 11px; font-weight: 700; }
.manual-hero__stats b { color: var(--accent); font-size: 15px; }
.manual-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }
.manual-hero__map { display: grid; gap: 10px; border: 1px solid rgba(185,205,235,.9); border-radius: 26px; background: rgba(255,255,255,.76); padding: 16px; box-shadow: 0 26px 70px rgba(28,67,126,.14); backdrop-filter: blur(14px); }
.manual-hero__map a { min-height: 92px; display: grid; grid-template-columns: 52px 1fr; align-items: center; gap: 15px; border: 1px solid #d7e2f1; border-radius: 17px; background: #fff; padding: 13px 15px; transition: .2s ease; }
.manual-hero__map a:hover { border-color: #91afe1; transform: translateX(5px); box-shadow: 0 12px 28px rgba(31,75,143,.09); }
.manual-hero__map a > span { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 15px; color: #fff; background: linear-gradient(135deg,var(--accent-dark),var(--accent)); font-size: 20px; font-weight: 800; }
.manual-hero__map strong,.manual-hero__map small { display: block; }
.manual-hero__map strong { color: var(--ink); font-size: 18px; }
.manual-hero__map small { margin-top: 4px; color: var(--muted); line-height: 1.55; }
.manual-hero__map--categories { grid-template-columns: repeat(2,minmax(0,1fr)); }
.manual-hero__map--categories a { min-height: 90px; grid-template-columns: 42px minmax(0,1fr); gap: 11px; padding: 11px; }
.manual-hero__map--categories a:last-child { grid-column: 1 / -1; }
.manual-hero__map--categories a > span { width: 38px; height: 38px; border-radius: 12px; font-size: 11px; }
.manual-hero__map--categories strong { font-size: 14px; line-height: 1.35; }
.manual-hero__map--categories small { font-size: 10px; }

.product-directory { background: white; }
.product-directory--home { background: linear-gradient(180deg,#f7faff 0,#fff 72%); padding: 48px 0 72px; }
.product-directory--home .section-heading { margin-bottom: 28px; }
.product-directory--home .section-heading h1 { font-size: clamp(38px,4.4vw,56px); }
.category-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.authorized-portfolio { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(300px,.75fr) auto; align-items: center; gap: 28px; margin-top: 22px; border: 1px solid #cbd9ec; border-radius: 22px; background: linear-gradient(135deg,#f7faff,#edf8f5); padding: 28px; }
.authorized-portfolio h2 { margin: 5px 0 8px; font-size: 25px; line-height: 1.35; }
.authorized-portfolio p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.75; }
.authorized-portfolio__map { display: grid; gap: 7px; }
.authorized-portfolio__map span { border-left: 3px solid #35a992; color: #405b7e; background: rgba(255,255,255,.82); padding: 8px 11px; font-size: 10px; font-weight: 700; }
.pump-path-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.pump-path-card { overflow: hidden; display: flex; flex-direction: column; border: 1px solid #d4e0ef; border-radius: 20px; background: #fff; box-shadow: 0 12px 32px rgba(31,75,143,.06); }
.pump-path-card figure { height: 260px; display: grid; place-items: center; margin: 0; background: #f7faff; padding: 24px; }
.pump-path-card figure img { width: 100%; height: 100%; object-fit: contain; }
.pump-path-card > div { min-height: 225px; display: flex; flex-direction: column; padding: 24px; }
.pump-path-card small { color: var(--accent); font-size: 10px; font-weight: 800; letter-spacing: .11em; }
.pump-path-card h3 { margin: 12px 0 9px; font-size: 22px; }
.pump-path-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.75; }
.pump-path-card a { align-self: flex-start; margin-top: auto; padding-top: 20px; color: var(--accent); font-size: 12px; font-weight: 800; }
.category-card { min-height: 194px; display: grid; grid-template-columns: 132px 1fr; grid-template-rows: 1fr auto; gap: 10px 16px; border: 1px solid var(--line); border-radius: 20px; background: white; padding: 12px; box-shadow: 0 7px 24px rgba(31,75,143,.05); transition: .22s; }
.category-card:hover { border-color: #aac1ec; background: linear-gradient(155deg,#fff,#eef5ff); transform: translateY(-5px); box-shadow: var(--shadow); }
.category-card--wide { grid-column: span 2; grid-template-columns: 200px 1fr; }
.category-card--wide .category-card__visual { width: 200px; }
.category-card--wide h3 { font-size: 25px; }
.category-card--pump { border-color: #9fb9ed; background: linear-gradient(145deg,#f7faff,#edf4ff); }
.category-card--pump:hover { border-color: #7fa5e9; background: linear-gradient(145deg,#fff,#eaf2ff); }
.category-card__visual { position: relative; grid-row: 1 / 3; width: 132px; min-height: 168px; overflow: hidden; margin: 0; border: 1px solid #e2eaf5; border-radius: 15px; background: white; }
.category-card__visual img { width: 100%; height: 100%; display: block; object-fit: contain; transition: transform .28s ease; }
.category-card__visual figcaption { display: none; color: #6d7f9c; font-size: 11px; font-weight: 700; line-height: 1.6; text-align: center; }
.category-card__visual--pending.is-missing { display: grid; place-items: center; background: linear-gradient(145deg,#fff,#eef4fb); }
.category-card__visual--pending.is-missing img { display: none; }
.category-card__visual--pending.is-missing figcaption { display: block; }
.category-card:hover .category-card__visual img { transform: scale(1.045); }
.category-card__visual--rga img { transform: translateY(-6px) scale(1.36); }
.category-card:hover .category-card__visual--rga img { transform: translateY(-6px) scale(1.42); }
.category-card small { color: var(--accent); font-size: 9px; font-weight: 700; letter-spacing: .14em; }
.category-card h3 { margin: 7px 0; font-size: 21px; line-height: 1.25; }
.category-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.category-card__arrow { grid-column: 2; align-self: end; color: var(--accent); font-size: 12px; font-weight: 700; }
.catalog-shortcut { min-height: 94px; display: grid; grid-template-columns: 72px auto 1fr; align-items: center; gap: 18px; margin-top: 14px; border: 1px solid #b9d7ef; border-radius: 18px; background: linear-gradient(125deg,#eef5ff,#e8fbf8); padding: 10px 22px 10px 10px; transition: .22s; }
.catalog-shortcut:hover { border-color: #7fb9e2; transform: translateY(-3px); box-shadow: 0 10px 28px rgba(31,75,143,.09); }
.catalog-shortcut__visual { position: relative; width: 72px; height: 72px; overflow: hidden; margin: 0; border: 1px solid #d5e4ee; border-radius: 14px; background: white; }
.catalog-shortcut__visual img { width: 100%; height: 100%; display: block; object-fit: cover; }
.catalog-shortcut small { display: block; color: var(--accent); font-size: 9px; font-weight: 700; letter-spacing: .12em; }
.catalog-shortcut strong { display: block; margin-top: 4px; font-size: 20px; }
.catalog-shortcut__arrow { justify-self: end; color: var(--accent); font-size: 12px; font-weight: 700; }
.simple-path { background: var(--paper); }
.simple-path__layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 100px; }
.simple-path h2 { margin: 0; font-size: clamp(34px,4.2vw,52px); line-height: 1.2; letter-spacing: -.04em; }
.simple-path__items { border-top: 1px solid var(--line); }
.simple-path__items a { display: grid; grid-template-columns: 54px 1fr; gap: 18px; border-bottom: 1px solid var(--line); padding: 24px 0; transition: .2s; }
.simple-path__items a:hover { padding-left: 10px; }
.simple-path__items span { color: var(--accent); font-size: 11px; font-weight: 700; }
.simple-path__items b { font-size: 19px; }
.simple-path__items p { margin: 6px 0 0; color: var(--muted); }

.page-hero { background: radial-gradient(circle at 78% 20%,rgba(79,201,191,.22),transparent 25%),linear-gradient(145deg,#fff,#edf5ff); }
.page-hero__layout { min-height: 420px; display: grid; grid-template-columns: 1fr .7fr; align-items: center; gap: 75px; padding: 72px 0; }
.page-hero h1 { margin: 0; font-size: clamp(44px,5.5vw,68px); line-height: 1.1; letter-spacing: -.05em; }
.page-hero__lead { margin: 24px 0 0; color: var(--muted); font-size: 17px; line-height: 1.85; }
.page-hero__note { border-left: 3px solid var(--accent); border-radius: 0 16px 16px 0; background: rgba(255,255,255,.75); padding: 24px; color: var(--muted); line-height: 1.8; box-shadow: var(--shadow); }
.breadcrumb { margin-bottom: 18px; color: var(--muted); font-size: 11px; }
.breadcrumb a { color: var(--accent); }

.product-series-grid, .service-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.series-card, .service-card { display: flex; min-height: 330px; flex-direction: column; border: 1px solid var(--line); border-radius: var(--radius); background: white; padding: 26px; box-shadow: 0 8px 25px rgba(31,75,143,.05); }
.series-card__meta, .service-card__meta { color: var(--accent); font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.series-card h3, .service-card h3 { margin: 18px 0 10px; font-size: 23px; line-height: 1.3; }
.series-card p, .service-card p { margin: 0; color: var(--muted); line-height: 1.75; }
.option-label { margin-top: 24px; color: var(--ink); font-size: 11px; font-weight: 700; }
.option-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 10px; }
.option-tags span { border-radius: 999px; color: #536a90; background: var(--paper); padding: 7px 10px; font-size: 10px; }
.series-card__actions, .service-card__actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: auto; padding-top: 28px; }
.series-card__actions a, .service-card__actions a { min-height: 40px; display: inline-flex; align-items: center; border-radius: 10px; padding: 0 13px; font-size: 11px; font-weight: 700; }
.series-card__actions a:first-child { color: white; background: var(--accent); }
.series-card__actions a:last-child, .service-card__actions a { border: 1px solid var(--line); }
.product-series-grid--measurement { grid-template-columns: repeat(2,minmax(0,1fr)); }
.series-card--measurement { min-height: 430px; display: grid; grid-template-columns: minmax(150px,.65fr) minmax(0,1.35fr); gap: 22px; overflow: hidden; padding: 18px; }
.series-card--measurement figure { min-height: 100%; display: grid; place-items: center; margin: 0; border: 1px solid #e2eaf6; border-radius: 16px; background: linear-gradient(160deg,#fff,#f0f5fc); padding: 14px; }
.series-card--measurement figure img { width: 100%; height: 100%; max-height: 330px; object-fit: contain; }
.series-card--measurement .series-card__body { min-width: 0; display: flex; flex-direction: column; }
.series-card__label { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.series-card__label span { border-radius: 999px; color: #1746b9; background: #e8efff; padding: 6px 9px; font-size: 10px; font-weight: 700; }
.series-card__label small { color: #7586a2; font-size: 9px; font-weight: 700; letter-spacing: .08em; }
.series-card--measurement .series-card__type { margin-top: 20px; color: var(--accent); font-size: 10px; font-weight: 700; letter-spacing: .06em; }
.series-card--measurement h3 { margin-top: 7px; font-size: 21px; }
.series-card--measurement .option-label { margin-top: 18px; }
.series-card--measurement .option-tags span { background: #f0f5fc; }
.measurement-guide { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin: -12px 0 26px; }
.measurement-guide a { min-height: 84px; display: flex; flex-direction: column; justify-content: center; gap: 7px; border: 1px solid #cbdaf0; border-radius: 15px; background: linear-gradient(150deg,#fff,#f1f6fd); padding: 15px 17px; transition: .2s ease; }
.measurement-guide a:hover { border-color: var(--accent); transform: translateY(-2px); box-shadow: 0 10px 26px rgba(31,75,143,.1); }
.measurement-guide strong { font-size: 13px; }
.measurement-guide span { color: var(--muted); font-size: 10px; line-height: 1.5; }

.fittings-catalog { border-top: 1px solid var(--line); background: #f5f7fa; }
.fittings-catalog__inner { padding-top: 54px; padding-bottom: 84px; }
.fittings-status-notice { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 16px; border: 1px solid #d7dde6; border-radius: 15px; color: #5d6878; background: #e9edf2; padding: 16px 18px; }
.fittings-status-notice span { border-radius: 999px; color: #56606d; background: #d8dee6; padding: 7px 11px; font-size: 11px; font-weight: 700; white-space: nowrap; }
.fittings-status-notice p { margin: 0; font-size: 12px; line-height: 1.7; }
.fittings-heading { margin-top: 58px; }
.fittings-connection-guide { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-bottom: 20px; }
.fittings-connection-guide article { border: 1px solid #d7dde6; border-radius: 15px; background: rgba(255,255,255,.72); padding: 17px; }
.fittings-connection-guide article > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.fittings-connection-guide strong { color: var(--ink); font-size: 15px; }
.fittings-connection-guide span { color: #667387; font-size: 10px; font-weight: 700; }
.fittings-connection-guide p { margin: 9px 0 0; color: #687589; font-size: 11px; line-height: 1.65; }
.fittings-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.fitting-card { min-width: 0; overflow: hidden; border: 1px solid #d7dde6; border-radius: 18px; background: #f1f3f6; box-shadow: 0 8px 22px rgba(54,66,86,.05); }
.fitting-card--draft { color: #626d7c; }
.fitting-card figure { position: relative; width: 100%; height: auto; aspect-ratio: 16 / 9; display: grid; place-items: center; overflow: hidden; margin: 0; border-bottom: 1px solid #e0e4ea; background: #fff; padding: 16px; }
.fitting-card img { width: 100%; height: 100%; max-width: 100%; max-height: 100%; min-width: 0; min-height: 0; display: block; object-fit: contain; object-position: center; filter: saturate(.78); }
.fitting-card__body { padding: 20px; }
.fitting-card__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.fitting-card h3 { margin: 0; color: #344154; font-size: 20px; line-height: 1.35; }
.fitting-card__heading > span { flex: 0 0 auto; border-radius: 999px; color: #68717e; background: #dfe3e8; padding: 6px 9px; font-size: 9px; font-weight: 700; white-space: nowrap; }
.fitting-card__body > p { min-height: 44px; margin: 9px 0 18px; color: #747f8f; font-size: 11px; line-height: 1.7; }
.fitting-card dl { display: grid; gap: 11px; margin: 0; }
.fitting-card dl > div { display: grid; grid-template-columns: 48px 1fr; align-items: start; gap: 10px; }
.fitting-card dt { padding-top: 5px; color: #707b8b; font-size: 10px; font-weight: 700; }
.fitting-card dd { display: flex; flex-wrap: wrap; gap: 5px; margin: 0; }
.fitting-card dd span { border: 1px solid #d5dae2; border-radius: 999px; color: #626e80; background: #e8ebef; padding: 5px 8px; font-size: 9px; line-height: 1.25; }
.fitting-card button { width: 100%; min-height: 40px; margin-top: 20px; border: 0; border-radius: 10px; color: #818a98; background: #dfe3e8; font-size: 11px; font-weight: 700; cursor: not-allowed; opacity: 1; }
.fittings-bundle-note { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-top: 18px; border: 1px solid #d7dde6; border-radius: 15px; color: #657184; background: white; padding: 18px 20px; }
.fittings-bundle-note strong { color: var(--ink); font-size: 13px; }
.fittings-bundle-note p { margin: 4px 0 0; color: #3e4d62; font-size: 15px; font-weight: 700; }
.fittings-bundle-note > span { font-size: 11px; line-height: 1.6; text-align: right; }
.fittings-data-error { grid-column: 1 / -1; border: 1px solid #d7dde6; border-radius: 15px; color: #687589; background: white; padding: 24px; text-align: center; }

.helium-solutions { background: #f7faff; }
.helium-paths { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin-top: -34px; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: var(--line); box-shadow: 0 16px 42px rgba(31,75,143,.1); }
.helium-paths a { display: grid; gap: 7px; color: var(--ink); background: white; padding: 22px 24px; transition: .18s ease; }
.helium-paths a:hover { color: var(--accent); background: #f7fbff; }
.helium-paths strong { font-size: 18px; }
.helium-paths span { color: var(--muted); font-size: 11px; }
.helium-products { padding-top: 84px; }
.helium-product-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.helium-product-card { display: grid; grid-template-columns: 190px 1fr; gap: 22px; border: 1px solid var(--line); border-radius: 20px; background: white; padding: 18px; box-shadow: 0 10px 30px rgba(31,75,143,.055); }
.helium-product-card__image-link { display: block; border-radius: 15px; }
.helium-product-card figure { min-height: 220px; display: grid; place-items: center; margin: 0; border-radius: 15px; overflow: hidden; background: #fff; }
.helium-product-card img { width: 100%; height: 100%; object-fit: contain; }
.helium-product-card__type, .helium-service-card__type { margin: 4px 0 7px!important; color: #349245!important; font-size: 10px; font-weight: 700; letter-spacing: .08em; }
.helium-product-card h3 { margin: 0 0 8px; font-size: 26px; }
.helium-product-card__title-link { color: var(--ink); }
.helium-product-card__title-link:hover { color: var(--accent); }
.helium-product-card > div > p:not(.helium-product-card__type) { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.7; }
.helium-product-card ul { display: grid; gap: 6px; margin: 14px 0 18px; padding-left: 18px; color: #4f6382; font-size: 11px; line-height: 1.55; }
.helium-product-card__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.helium-product-card__actions a, .helium-service-card > a { display: inline-flex; min-height: 40px; align-items: center; justify-content: center; border-radius: 10px; color: white; background: var(--accent); padding: 0 14px; font-size: 11px; font-weight: 700; }
.helium-product-card__actions a:last-child { border: 1px solid #cad8eb; color: var(--accent); background: white; }
.helium-common-specs { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-top: 18px; border: 1px solid #cbd9eb; border-radius: 15px; background: white; padding: 16px; }
.helium-common-specs strong { margin-right: 5px; font-size: 12px; }
.helium-common-specs span { border-radius: 999px; color: #536a90; background: #edf4fd; padding: 7px 10px; font-size: 10px; }
.helium-services { border-top: 1px solid var(--line); background: white; }
.helium-service-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.helium-service-card { display: flex; min-height: 480px; flex-direction: column; border: 1px solid var(--line); border-radius: 20px; background: #fbfdff; padding: 24px; }
.helium-service-card--featured { border-color: #8cafef; background: linear-gradient(160deg,#f2f7ff,#fff); }
.helium-service-card h3 { margin: 0 0 12px; font-size: 23px; }
.helium-service-card > p:not(.helium-service-card__type) { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.75; }
.helium-service-card dl { display: grid; gap: 0; margin: 22px 0; }
.helium-service-card dl div { display: flex; justify-content: space-between; gap: 16px; border-bottom: 1px solid #dfe7f1; padding: 11px 0; }
.helium-service-card dt { color: #526987; font-size: 11px; }
.helium-service-card dd { margin: 0; color: var(--ink); font-size: 12px; font-weight: 700; text-align: right; }
.helium-service-card > a { margin-top: auto; }
.helium-service-notes { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-top: 18px; }
.helium-service-notes article { border: 1px solid var(--line); border-radius: 15px; padding: 18px; }
.helium-service-notes h3 { margin: 0 0 8px; font-size: 15px; }
.helium-service-notes p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.7; }
.helium-service-disclaimer { display: grid; grid-template-columns: 160px 1fr auto; align-items: center; gap: 24px; margin-top: 18px; border-radius: 16px; color: #dbe7f8; background: #173c7a; padding: 20px; }
.helium-service-disclaimer strong { color: white; font-size: 15px; }
.helium-service-disclaimer p { margin: 0; font-size: 11px; line-height: 1.7; }
.helium-service-disclaimer .button { white-space: nowrap; }

.helium-model-hero { background: radial-gradient(circle at 78% 20%,rgba(79,201,191,.22),transparent 26%),linear-gradient(145deg,#fff,#edf5ff); }
.helium-model-hero__layout { min-height: 520px; display: grid; grid-template-columns: 1.1fr .7fr; align-items: center; gap: 70px; padding: 64px 0; }
.helium-model-hero h1 { margin: 4px 0 0; color: #10295b; font-size: clamp(48px,6vw,78px); letter-spacing: -.05em; line-height: 1; }
.helium-model-type { margin: 0; color: #349245; font-size: 13px; font-weight: 700; }
.helium-model-lead { max-width: 720px; margin: 22px 0 0; color: var(--muted); font-size: 16px; line-height: 1.8; }
.helium-model-features { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.helium-model-features span { border: 1px solid #cbd9eb; border-radius: 999px; color: #526987; background: rgba(255,255,255,.82); padding: 8px 12px; font-size: 10px; font-weight: 600; }
.helium-model-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.helium-model-hero figure { min-height: 360px; display: grid; place-items: center; margin: 0; border: 1px solid rgba(205,219,237,.9); border-radius: 28px; background: rgba(255,255,255,.86); padding: 28px; box-shadow: 0 20px 48px rgba(31,75,143,.11); }
.helium-model-hero figure img { width: min(100%,340px); height: auto; object-fit: contain; }
.helium-model-specs { background: white; }
.helium-spec-table-wrap { border: 1px solid var(--line); border-radius: 18px; overflow: hidden; box-shadow: 0 10px 30px rgba(31,75,143,.05); }
.helium-spec-table { width: 100%; border-collapse: collapse; background: white; }
.helium-spec-table th, .helium-spec-table td { border-bottom: 1px solid #dfe7f1; padding: 14px 18px; text-align: left; vertical-align: top; }
.helium-spec-table thead th { color: white; background: #175879; font-size: 12px; }
.helium-spec-table tbody th { width: 38%; color: #415a79; background: #f7fafc; font-size: 11px; font-weight: 700; }
.helium-spec-table tbody td { color: var(--ink); font-size: 12px; }
.helium-spec-table tbody tr:last-child th, .helium-spec-table tbody tr:last-child td { border-bottom: 0; }
.helium-model-context { background: #f4f8fc; }
.helium-model-context__layout { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.helium-model-context article { border: 1px solid var(--line); border-radius: 20px; background: white; padding: 28px; }
.helium-model-context h2 { margin: 0 0 18px; font-size: 28px; }
.helium-model-applications { display: flex; flex-wrap: wrap; gap: 9px; }
.helium-model-applications span { border-radius: 999px; color: #173c7a; background: #eaf2ff; padding: 10px 13px; font-size: 11px; font-weight: 700; }
.helium-model-context ul { display: grid; gap: 11px; margin: 0; padding-left: 20px; color: var(--muted); line-height: 1.65; }
.helium-model-switch { background: white; padding: 60px 0 80px; }
.helium-model-switch .shell { display: grid; grid-template-columns: 260px 1fr; align-items: start; gap: 36px; }
.helium-model-switch h2 { margin: 0; font-size: 28px; }
.helium-model-switch nav { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.helium-model-switch nav a { display: grid; gap: 6px; border: 1px solid var(--line); border-radius: 14px; padding: 16px; }
.helium-model-switch nav a:hover { border-color: #7ca1e9; background: #f7faff; }
.helium-model-switch nav strong { color: var(--ink); font-size: 16px; }
.helium-model-switch nav span { color: var(--muted); font-size: 10px; line-height: 1.5; }
.catalog-section { background: white; }
.catalog-mode .page-hero__layout { min-height: auto; grid-template-columns: 1.15fr .85fr; gap: 36px; padding: 30px 0 26px; }
.catalog-mode .page-hero h1 { font-size: clamp(34px,4vw,48px); }
.catalog-mode .page-hero__lead { margin-top: 12px; font-size: 15px; line-height: 1.65; }
.catalog-mode .page-hero__note { padding: 16px 18px; font-size: 13px; line-height: 1.65; box-shadow: none; }
.catalog-mode .breadcrumb { margin-bottom: 10px; }
.catalog-mode .page-hero .eyebrow { margin-bottom: 8px; }
.catalog-mode .catalog-section { padding-top: 28px; }
.catalog-search-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 14px; }
.catalog-search-heading .eyebrow { margin-bottom: 6px; }
.catalog-search-heading h2 { margin: 0; font-size: clamp(28px,3.2vw,38px); line-height: 1.15; letter-spacing: -.04em; }
.catalog-search-heading > p { max-width: 570px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.parts-category-directory { margin-bottom: 18px; border: 1px solid #cbdaf0; border-radius: 22px; background: linear-gradient(145deg,#f8fbff,#edf5ff); padding: 22px; }
.parts-browser-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-bottom: 26px; }
.parts-browser-tabs button { display: grid; grid-template-columns: 42px 1fr; grid-template-rows: auto auto; column-gap: 12px; min-height: 76px; align-content: center; border: 1px solid #cfdbec; border-radius: 15px; color: var(--ink); background: rgba(255,255,255,.82); padding: 14px 16px; cursor: pointer; text-align: left; transition: .18s ease; }
.parts-browser-tabs button:hover { border-color: #83a8ef; transform: translateY(-1px); }
.parts-browser-tabs button.is-active { border-color: var(--accent); color: white; background: linear-gradient(135deg,#173d7b,#2862ed); box-shadow: 0 12px 25px rgba(36,91,232,.18); }
.parts-browser-tabs button > span { grid-row: 1 / 3; display: grid; width: 42px; height: 42px; place-items: center; align-self: center; border-radius: 12px; color: var(--accent); background: #e9f0ff; font-size: 12px; font-weight: 800; }
.parts-browser-tabs button.is-active > span { color: #173d7b; background: white; }
.parts-browser-tabs strong { align-self: end; font-size: 16px; }
.parts-browser-tabs small { align-self: start; margin-top: 2px; color: var(--muted); font-size: 11px; }
.parts-browser-tabs button.is-active small { color: #dce7ff; }
.parts-browser-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 14px; }
.parts-browser-heading span { color: var(--accent); font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.parts-browser-heading h3 { margin: 5px 0 0; font-size: 21px; }
.parts-browser-heading p { max-width: 480px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.parts-family-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; }
.parts-family-card { min-width: 0; min-height: 112px; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 14px; border: 1px solid #d3e0f1; border-radius: 15px; color: var(--ink); background: white; padding: 18px; cursor: pointer; text-align: left; transition: .18s ease; }
.parts-family-card:hover { border-color: #7fa6ee; transform: translateY(-2px); box-shadow: 0 10px 22px rgba(31,75,143,.08); }
.parts-family-card.is-active { border-color: var(--accent); box-shadow: 0 0 0 2px rgba(36,91,232,.12), 0 10px 22px rgba(31,75,143,.08); }
.parts-family-card__copy { min-width: 0; }
.parts-family-card__copy strong, .parts-family-card__copy small { display: block; }
.parts-family-card__copy strong { margin-bottom: 5px; font-size: 16px; }
.parts-family-card__copy small { color: var(--muted); font-size: 11px; line-height: 1.55; }
.parts-family-card b { align-self: start; border-radius: 999px; color: #436087; background: #edf3fb; padding: 6px 8px; font-size: 10px; white-space: nowrap; }
.parts-brand-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; }
.parts-brand-grid button { min-height: 66px; display: flex; align-items: center; justify-content: space-between; gap: 10px; border: 1px solid #d3e0f1; border-radius: 13px; color: var(--ink); background: white; padding: 13px; cursor: pointer; transition: .18s ease; }
.parts-brand-grid button:hover { border-color: #7fa6ee; transform: translateY(-1px); }
.parts-brand-grid button.is-active { border-color: var(--accent); color: white; background: var(--accent); }
.parts-brand-grid strong { overflow: hidden; font-size: 12px; text-overflow: ellipsis; }
.parts-brand-grid span { color: var(--muted); font-size: 10px; white-space: nowrap; }
.parts-brand-grid button.is-active span { color: white; }
.parts-series-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 15px; }
.parts-series-row > span { margin-right: 4px; color: var(--muted); font-size: 11px; font-weight: 700; }
.parts-series-row button { border: 1px solid #cddbf0; border-radius: 999px; color: #31578c; background: white; padding: 8px 11px; cursor: pointer; font-size: 11px; font-weight: 700; }
.parts-series-row button.is-active { border-color: var(--accent); color: white; background: var(--accent); }
.parts-series-row b { margin-left: 4px; font-size: 9px; }
.parts-show-all { width: 100%; min-height: 44px; margin-top: 14px; border: 1px dashed #a9bfe0; border-radius: 12px; color: #31578c; background: rgba(255,255,255,.52); cursor: pointer; font-size: 11px; font-weight: 700; }
.parts-show-all:hover { border-color: var(--accent); background: white; }
.parts-current-path { display: flex; align-items: center; gap: 9px; margin-bottom: 12px; border-left: 3px solid var(--accent); color: var(--muted); background: #f7faff; padding: 10px 13px; font-size: 11px; }
.parts-current-path b { color: #9aabc3; }
.parts-current-path strong { color: var(--ink); }
.parts-current-path em { margin-left: auto; color: #436087; font-style: normal; font-weight: 700; }
.parts-catalog-mode #catalogCategoryField { display: none; }
.parts-catalog-mode .catalog-controls { grid-template-columns: minmax(260px,1fr) auto; }
.catalog-controls { display: grid; grid-template-columns: minmax(260px,1.5fr) minmax(210px,.8fr) auto; align-items: end; gap: 14px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; padding: 20px; box-shadow: 0 8px 28px rgba(31,75,143,.06); }
.catalog-controls label { display: flex; flex-direction: column; gap: 8px; color: var(--ink); font-size: 11px; font-weight: 700; }
.catalog-controls input, .catalog-controls select { width: 100%; min-height: 48px; border: 1px solid #cbd8e9; border-radius: 12px; color: var(--ink); background: white; padding: 0 14px; outline: none; }
.catalog-controls input:focus, .catalog-controls select:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(36,91,232,.12); }
.inquiry-page { padding: 80px 0 96px; background: radial-gradient(circle at 12% 10%, rgba(79,201,191,.16), transparent 28%), linear-gradient(145deg,#f8fbff,#edf5ff); }
.inquiry-layout { display: grid; grid-template-columns: minmax(0,.85fr) minmax(420px,1fr); gap: 64px; align-items: start; }
.inquiry-copy { position: sticky; top: 110px; padding-top: 22px; }
.inquiry-copy h1 { margin: 8px 0 20px; max-width: 560px; font-size: clamp(38px,5vw,64px); line-height: 1.05; color: #10295b; }
.inquiry-copy > p { max-width: 600px; color: var(--muted); line-height: 1.9; }
.inquiry-points { display: flex; flex-wrap: wrap; gap: 10px; margin: 28px 0; }
.inquiry-points span { padding: 9px 13px; border: 1px solid #cbdaf1; border-radius: 999px; color: #31578c; background: rgba(255,255,255,.7); }
.inquiry-direct a { color: var(--accent); font-weight: 700; }
.inquiry-form { display: grid; gap: 18px; padding: 34px; border: 1px solid rgba(203,218,241,.95); border-radius: 24px; background: rgba(255,255,255,.92); box-shadow: 0 24px 70px rgba(31,77,147,.12); }
.inquiry-form label { display: grid; gap: 8px; }
.inquiry-form label > span { color: #263d61; font-size: 14px; font-weight: 700; }
.inquiry-form input, .inquiry-form textarea { width: 100%; border: 1px solid #cbd8e9; border-radius: 12px; color: var(--ink); background: white; padding: 13px 14px; outline: none; }
.inquiry-form input:focus, .inquiry-form textarea:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(36,91,232,.12); }
.inquiry-form textarea { resize: vertical; }
.inquiry-privacy { margin: 0; color: #70829c; font-size: 13px; line-height: 1.7; }
.inquiry-privacy a { color: var(--accent); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.inquiry-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.inquiry-status { min-height: 24px; margin: 0; color: #5f7190; line-height: 1.6; }
.inquiry-status.is-success { color: #167153; font-weight: 700; }
.inquiry-status.is-error { color: #b42318; font-weight: 700; }
button:disabled { cursor: wait; opacity: .7; }
.catalog-controls .button { min-height: 48px; cursor: pointer; }
.catalog-toolbar { min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.catalog-toolbar p { margin: 0; color: var(--ink); font-weight: 700; }
.catalog-toolbar span { color: var(--muted); font-size: 11px; }
.catalog-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.catalog-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: white; box-shadow: 0 7px 23px rgba(31,75,143,.06); }
.catalog-card__image { position: relative; width: 100%; aspect-ratio: 4 / 3; display: block; overflow: hidden; background: linear-gradient(145deg,#edf3fb,#f8fbff); }
.catalog-card__image img { width: 100%; height: 100%; display: block; object-fit: contain; padding: 10px; mix-blend-mode: multiply; }
.catalog-card--jfb .catalog-card__image { background: #fff; }
.catalog-card--jfb .catalog-card__image img { object-fit: cover; object-position: 50% 3.5%; padding: 0; transform: scale(2.25); transform-origin: 50% center; }
.catalog-card--jfb[data-product-id="CBVAC-JFB-63-81"] .catalog-card__image img { transform-origin: 23% center; }
.catalog-card--jfb[data-product-id="CBVAC-JFB-100-301"] .catalog-card__image img { transform-origin: 30% center; }
.catalog-card--jfb[data-product-id="CBVAC-JFB-160-401"] .catalog-card__image img { transform-origin: 49% center; }
.catalog-card__fallback { position: absolute; inset: 0; display: none; place-items: center; color: #8ea0bb; font-size: 11px; font-weight: 700; letter-spacing: .1em; }
.catalog-card.is-missing .catalog-card__image img { display: none; }
.catalog-card.is-missing .catalog-card__fallback { display: grid; }
.catalog-card__body { display: flex; min-height: 245px; flex-direction: column; padding: 18px; }
.catalog-card__meta { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: var(--accent); font-size: 9px; font-weight: 700; letter-spacing: .08em; }
.catalog-card__meta span:last-child { color: var(--muted); letter-spacing: 0; }
.catalog-card h3 { margin: 15px 0 9px; font-size: 16px; line-height: 1.45; overflow-wrap: anywhere; }
.catalog-card__reference { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }
.catalog-card__price { display: flex; align-items: baseline; gap: 8px; margin: 14px 0 0; color: var(--ink); }
.catalog-card__price strong { font-size: 21px; letter-spacing: -.03em; }
.catalog-card__price span { color: var(--muted); font-size: 10px; font-weight: 700; }
.catalog-card__price--quote strong { color: var(--accent); font-size: 17px; }
.catalog-card--molecular .catalog-card__price--quote { flex-wrap: wrap; }
.catalog-card--molecular .catalog-card__price--quote strong { color: #b04b20; }
.catalog-card__actions { display: flex; flex-direction: column; align-items: stretch; gap: 9px; margin-top: auto; padding-top: 20px; }
.catalog-card__actions > span { align-self: flex-end; color: var(--muted); font-size: 10px; font-weight: 700; }
.catalog-card__action-group { min-width: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.catalog-card__action-group.is-single { grid-template-columns: minmax(0,1fr); }
.catalog-card__actions a, .catalog-card__actions button { width: 100%; min-height: 40px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 10px; color: white; background: var(--accent); padding: 0 10px; font-size: 11px; font-weight: 700; text-align: center; cursor: pointer; }
.catalog-card__actions button:hover, .catalog-card__actions a:hover { background: var(--accent-dark); }
.catalog-card__action-group:not(.is-single) a { border: 1px solid #cbd8eb; color: var(--accent); background: white; }
.catalog-card__action-group:not(.is-single) a:hover { border-color: var(--accent); background: #f4f8ff; }
.catalog-card h3 a:hover { color: var(--accent); }

.product-detail { min-height: 640px; background: linear-gradient(145deg,#f8fbff,#eef4fb); padding: 46px 0 88px; }
.product-detail__loading { border: 1px solid var(--line); border-radius: 18px; color: var(--muted); background: white; padding: 48px; text-align: center; }
.product-detail__loading strong { color: var(--ink); font-size: 22px; }
.product-detail__breadcrumb { margin-bottom: 30px; }
.product-detail__hero { display: grid; grid-template-columns: minmax(300px,.8fr) minmax(0,1.2fr); gap: 54px; border: 1px solid var(--line); border-radius: 26px; background: white; padding: clamp(22px,4vw,50px); box-shadow: var(--shadow); }
.product-detail__image { position: relative; min-height: 430px; display: grid; place-items: center; overflow: hidden; margin: 0; border: 1px solid #e0e8f3; border-radius: 20px; background: #fff; }
.product-detail__image img { width: 100%; height: 100%; max-height: 470px; object-fit: contain; padding: 18px; }
.molecular-product-detail .product-detail__image { height: clamp(270px,38vw,430px); min-height: 0; align-self: start; background: #fff; }
.molecular-product-detail .product-detail__image img[src*="cbvac-jfb-series"] { position: absolute; inset: 0; width: 100%; height: 100%; max-height: none; object-fit: cover; object-position: 50% 2.8%; padding: 0; transform: scale(2.2); transform-origin: 50% center; }
body[data-product-id="CBVAC-JFB-63-81"] .product-detail__image img { transform-origin: 23% center; }
body[data-product-id="CBVAC-JFB-100-301"] .product-detail__image img { transform-origin: 30% center; }
body[data-product-id="CBVAC-JFB-160-401"] .product-detail__image img { transform-origin: 49% center; }
.product-detail__image > span { display: none; color: var(--muted); font-size: 11px; font-weight: 700; letter-spacing: .08em; }
.product-detail__image.is-missing img { display: none; }
.product-detail__image.is-missing > span { display: block; }
.product-specs { margin-top: 34px; padding: 30px; border: 1px solid #dbe5f2; border-radius: 22px; background: #fff; box-shadow: 0 12px 34px rgba(31,75,143,.07); }
.product-specs__features { display: grid; gap: 10px; margin: 24px 0; padding-left: 22px; color: var(--muted); line-height: 1.75; }
.product-specs__table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 14px; }
.product-specs__table { width: 100%; min-width: 720px; border-collapse: collapse; }
.product-specs__table th, .product-specs__table td { padding: 13px 15px; border-bottom: 1px solid var(--line); text-align: left; font-size: 13px; line-height: 1.5; }
.product-specs__table thead th { color: #fff; background: var(--accent); }
.product-specs__table tbody th { width: 25%; color: var(--ink); background: #f6f9fd; }
.product-specs__table tbody tr:last-child th, .product-specs__table tbody tr:last-child td { border-bottom: 0; }
.product-specs__actions { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; margin-top: 22px; }
.product-specs__actions > a:not(.button) { color: var(--accent); font-weight: 700; }
.product-detail__copy { align-self: center; min-width: 0; }
.product-detail__copy h1 { margin: 8px 0 22px; color: var(--ink); font-size: clamp(30px,4vw,52px); line-height: 1.18; overflow-wrap: anywhere; }
.product-detail__facts { display: grid; gap: 0; margin: 0; border-top: 1px solid var(--line); }
.product-detail__facts div { display: grid; grid-template-columns: 120px 1fr; gap: 16px; border-bottom: 1px solid var(--line); padding: 13px 0; }
.product-detail__facts dt { color: var(--muted); font-size: 11px; }
.product-detail__facts dd { margin: 0; font-size: 12px; font-weight: 700; overflow-wrap: anywhere; }
.product-detail__price { margin: 25px 0 0; color: var(--ink); font-size: 25px; font-weight: 800; }
.product-detail__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.product-detail__notice { margin: 20px 0 0; color: var(--muted); font-size: 11px; line-height: 1.7; }
.kit-contents { margin-top: 26px; border: 1px solid var(--line); border-radius: 24px; background: white; padding: clamp(24px,4vw,42px); box-shadow: 0 12px 34px rgba(31,75,143,.06); }
.kit-contents .section-heading { margin-bottom: 25px; }
.kit-contents__table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 15px; }
.kit-contents__table { width: 100%; border-collapse: collapse; }
.kit-contents__table th, .kit-contents__table td { border-bottom: 1px solid var(--line); padding: 15px 17px; text-align: left; vertical-align: top; }
.kit-contents__table th { color: #607390; background: #f5f8fc; font-size: 10px; white-space: nowrap; }
.kit-contents__table td { color: #465b79; font-size: 12px; line-height: 1.6; }
.kit-contents__table tbody tr:last-child td { border-bottom: 0; }
.kit-contents__table td strong { color: var(--ink); }
.kit-contents__empty { border: 1px dashed #afc0d8; border-radius: 16px; background: #f8fbff; padding: 38px; text-align: center; }
.kit-contents__empty strong { font-size: 19px; }
.kit-contents__empty p { margin: 9px 0 0; color: var(--muted); font-size: 12px; }
.catalog-card__actions span { color: var(--muted); font-size: 10px; }
.catalog-card__actions span.inactive { color: #9a6270; }
.catalog-pagination { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 34px; }
.catalog-pagination button { min-width: 42px; min-height: 42px; border: 1px solid var(--line); border-radius: 11px; color: var(--ink); background: white; cursor: pointer; font-weight: 700; }
.catalog-pagination button:hover:not(:disabled) { border-color: var(--accent); color: var(--accent); }
.catalog-pagination button:disabled { cursor: not-allowed; opacity: .38; }
.catalog-pagination span { min-width: 120px; text-align: center; color: var(--muted); font-size: 12px; }
.catalog-disclaimer { margin-top: 48px; border-left: 3px solid var(--cyan); border-radius: 0 14px 14px 0; background: var(--paper); padding: 22px 24px; }
.catalog-disclaimer p { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.8; }
.catalog-empty { grid-column: 1 / -1; border: 1px dashed #b7c7dd; border-radius: var(--radius); padding: 60px 24px; text-align: center; color: var(--muted); }
.selection-guide { background: var(--ink); color: white; }
.selection-guide__layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; }
.selection-guide h2 { margin: 0; font-size: clamp(34px,4vw,50px); line-height: 1.2; }
.guide-steps { counter-reset: steps; border-top: 1px solid rgba(255,255,255,.18); }
.guide-steps article { display: grid; grid-template-columns: 55px 1fr; gap: 18px; border-bottom: 1px solid rgba(255,255,255,.18); padding: 23px 0; }
.guide-steps article::before { counter-increment: steps; content: "0" counter(steps); color: var(--cyan); font-size: 11px; font-weight: 700; }
.guide-steps b { font-size: 18px; }
.guide-steps p { margin: 7px 0 0; color: #a9bbd3; line-height: 1.7; }

.partner-banner { border: 1px solid #bdd0ef; border-radius: var(--radius); background: linear-gradient(120deg,#eef5ff,#e9fbf9); padding: 28px 32px; }
.partner-banner strong { display: block; font-size: 22px; }
.partner-banner p { margin: 10px 0 0; color: var(--muted); line-height: 1.8; }
.service-card { min-height: 310px; }
.service-card__actions a { color: var(--accent); background: white; }
.external-mark { margin-left: 5px; font-size: 12px; }
.external-disclaimer { margin: 25px 0 0; color: var(--muted); font-size: 11px; line-height: 1.7; }

.story { background: white; }
.story__layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 90px; }
.story__index { position: sticky; top: 130px; align-self: start; border-top: 2px solid var(--accent); padding-top: 18px; color: var(--muted); line-height: 1.8; }
.story__content h2 { margin: 0 0 26px; font-size: clamp(36px,4.4vw,56px); line-height: 1.17; }
.story__content > p { color: var(--muted); font-size: 16px; line-height: 2; }
.timeline { margin-top: 45px; border-left: 1px solid var(--line); }
.timeline article { position: relative; padding: 0 0 35px 35px; }
.timeline article::before { content: ""; position: absolute; top: 5px; left: -6px; width: 11px; height: 11px; border-radius: 50%; background: var(--accent); }
.timeline small { color: var(--accent); font-weight: 700; }
.timeline h3 { margin: 8px 0; font-size: 22px; }
.timeline p { margin: 0; color: var(--muted); line-height: 1.8; }
.values-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-top: 45px; }
.values-grid article { border-radius: 16px; background: var(--paper); padding: 24px; }
.values-grid span { color: var(--accent); font-size: 10px; font-weight: 700; }
.values-grid h3 { margin: 15px 0 8px; }
.values-grid p { margin: 0; color: var(--muted); line-height: 1.7; font-size: 13px; }
.source-note { margin-top: 35px; border-top: 1px solid var(--line); padding-top: 20px; color: var(--muted); font-size: 11px; line-height: 1.8; }
.source-note a { color: var(--accent); text-decoration: underline; }
.partners { border-top: 1px solid var(--line); background: linear-gradient(145deg,#f5f8ff 0,#eef8f6 100%); }
.partners__heading { align-items: end; margin-bottom: 30px; }
.partners__heading h2 { margin: 5px 0 0; font-size: clamp(38px,4.4vw,56px); line-height: 1.15; }
.partners__heading > p { max-width: 560px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.8; }
.partner-grid { display: grid; gap: 18px; }
.partner-card { display: grid; grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr); overflow: hidden; border: 1px solid #cbd9ec; border-radius: 22px; background: white; box-shadow: 0 18px 50px rgba(23,60,122,.08); }
.partner-card__logo { display: grid; min-height: 220px; margin: 0; overflow: hidden; place-items: center; border-right: 1px solid var(--line); background: #fff; }
.partner-card__logo img { display: block; width: 145%; max-width: 520px; height: auto; }
.partner-card__content { align-self: center; padding: 38px 42px; }
.partner-card__content > span { color: var(--accent); font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.partner-card__content h3 { margin: 10px 0 5px; color: var(--ink); font-size: clamp(30px,4vw,44px); letter-spacing: .04em; line-height: 1; }
.partner-card__company { margin: 0 0 16px!important; color: #395678!important; font-size: 14px!important; font-weight: 700; }
.partner-card__content > p:last-child { max-width: 700px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.8; }

.cart-page { min-height: 70vh; background: #f5f8fc; }
.cart-hero { border-bottom: 1px solid var(--line); background: radial-gradient(circle at 80% 20%,rgba(79,201,191,.18),transparent 24%),linear-gradient(145deg,#fff,#edf5ff); }
.cart-hero .shell { padding-top: 54px; padding-bottom: 54px; }
.cart-hero h1 { margin: 0; font-size: clamp(44px,5.5vw,68px); letter-spacing: -.05em; line-height: 1.05; }
.cart-hero > .shell > p:last-child { max-width: 680px; margin: 18px 0 0; color: var(--muted); font-size: 15px; line-height: 1.8; }
.cart-section { padding-top: 64px; }
.cart-layout { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(300px,.65fr); align-items: start; gap: 28px; }
.cart-list-heading { min-height: 72px; display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; border-bottom: 1px solid var(--line); padding-bottom: 18px; }
.cart-list-heading h2 { margin: 0; font-size: 26px; }
.cart-list-heading p { margin: 6px 0 0; color: var(--muted); font-size: 12px; }
.cart-list-heading button { border: 0; color: #64748a; background: transparent; padding: 8px 0; font-size: 11px; font-weight: 700; cursor: pointer; }
.cart-list-heading button:hover:not(:disabled) { color: #b42318; }
.cart-list-heading button:disabled { cursor: not-allowed; opacity: .45; }
.cart-list { display: grid; gap: 12px; padding-top: 16px; }
.cart-item { display: grid; grid-template-columns: 156px minmax(0,1fr); gap: 18px; border: 1px solid var(--line); border-radius: 18px; background: white; padding: 14px; box-shadow: 0 8px 22px rgba(31,75,143,.05); }
.cart-item figure { height: 132px; display: grid; place-items: center; overflow: hidden; margin: 0; border-radius: 13px; background: #f2f6fb; }
.cart-item figure img { width: 100%; height: 100%; object-fit: contain; padding: 8px; mix-blend-mode: multiply; }
.cart-item__content { min-width: 0; display: flex; flex-direction: column; }
.cart-item__heading { display: flex; justify-content: space-between; gap: 16px; }
.cart-item__heading p { margin: 0 0 5px; color: var(--accent); font-size: 9px; font-weight: 700; letter-spacing: .06em; }
.cart-item__heading h3 { margin: 0; font-size: 16px; line-height: 1.45; overflow-wrap: anywhere; }
.cart-item__heading span { display: block; margin-top: 6px; color: var(--muted); font-size: 10px; }
.cart-item__heading > button { align-self: flex-start; border: 0; color: #7b8799; background: transparent; padding: 2px 0; font-size: 10px; font-weight: 700; cursor: pointer; }
.cart-item__heading > button:hover { color: #b42318; }
.cart-item__footer { display: grid; grid-template-columns: minmax(140px,1fr) auto minmax(110px,.55fr); align-items: end; gap: 16px; margin-top: auto; padding-top: 12px; }
.cart-item__footer > strong { font-size: 15px; }
.cart-item__footer > strong small { color: var(--muted); font-size: 9px; font-weight: 500; }
.cart-item__footer > b { color: var(--ink); font-size: 16px; text-align: right; }
.cart-quantity { display: grid; grid-template-columns: 34px 48px 34px; border: 1px solid #cad7e8; border-radius: 10px; overflow: hidden; background: white; }
.cart-quantity button { border: 0; color: var(--ink); background: #f2f6fb; cursor: pointer; }
.cart-quantity input { width: 48px; min-height: 34px; border: 0; border-right: 1px solid #d9e2ee; border-left: 1px solid #d9e2ee; color: var(--ink); background: white; text-align: center; outline: none; appearance: textfield; }
.cart-quantity input::-webkit-inner-spin-button, .cart-quantity input::-webkit-outer-spin-button { margin: 0; appearance: none; }
.cart-empty { border: 1px dashed #b7c7dd; border-radius: 18px; background: white; padding: 64px 24px; text-align: center; }
.cart-empty strong { font-size: 22px; }
.cart-empty p { margin: 10px 0 22px; color: var(--muted); font-size: 12px; line-height: 1.7; }
.cart-empty a { display: inline-flex; min-height: 42px; align-items: center; border-radius: 999px; color: white; background: var(--accent); padding: 0 18px; font-size: 11px; font-weight: 700; }
.cart-summary { position: sticky; top: 110px; border: 1px solid var(--line); border-radius: 20px; background: white; padding: 25px; box-shadow: 0 14px 40px rgba(31,75,143,.08); }
.cart-summary h2 { margin: 0; font-size: 25px; }
.cart-summary dl { display: grid; gap: 0; margin: 22px 0; }
.cart-summary dl > div { display: flex; align-items: center; justify-content: space-between; gap: 20px; border-bottom: 1px solid #e3eaf3; padding: 13px 0; }
.cart-summary dt { color: var(--muted); font-size: 11px; }
.cart-summary dd { margin: 0; color: var(--ink); font-size: 14px; font-weight: 700; }
.cart-summary dl > div:last-child dd { font-size: 21px; }
.cart-tax-note { margin-bottom: 20px; border-radius: 12px; color: #5f6f84; background: #f1f5fa; padding: 14px; }
.cart-tax-note strong { color: #40516a; font-size: 11px; }
.cart-tax-note p { margin: 5px 0 0; font-size: 10px; line-height: 1.65; }
.cart-summary .button.is-disabled { color: #8b95a4; background: #dfe4eb; pointer-events: none; box-shadow: none; }
.cart-continue { display: block; margin-top: 17px; color: var(--accent); font-size: 11px; font-weight: 700; text-align: center; }

footer { color: #9fb1cd; background: #0c2148; padding: 70px 0 25px; }
.footer__grid { display: grid; grid-template-columns: 2fr 1fr 1.5fr; gap: 75px; }
.brand--footer strong { color: white; }
.footer__grid p { max-width: 330px; line-height: 1.8; }
.footer__grid > div:not(:first-child) { display: flex; flex-direction: column; align-items: flex-start; gap: 13px; font-size: 13px; }
.footer__grid b { margin-bottom: 9px; color: white; }
.footer__grid a:hover { color: white; }
.footer-store-info { display: grid; grid-template-columns: 170px minmax(0,1fr); gap: 36px; margin-top: 48px; border-top: 1px solid rgba(255,255,255,.11); padding-top: 28px; }
.footer-store-info > b { color: white; font-size: 15px; }
.footer-store-info__layout { display: grid; grid-template-columns: minmax(300px,1.5fr) minmax(320px,1fr); gap: 40px; }
.footer-store-info__company strong { display: block; margin-bottom: 12px; color: white; font-size: 14px; line-height: 1.6; }
.footer-store-info address { display: grid; gap: 5px; font-size: 12px; font-style: normal; line-height: 1.65; }
.footer-store-info dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 22px; margin: 0; }
.footer-store-info dl > div { min-width: 0; }
.footer-store-info dt { margin-bottom: 4px; color: #7f96bb; font-size: 10px; font-weight: 700; letter-spacing: .05em; }
.footer-store-info dd { margin: 0; color: #d6e1f2; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.footer-store-info a:hover { color: white; }
.footer__bottom { display: flex; justify-content: space-between; gap: 30px; margin-top: 28px; border-top: 1px solid rgba(255,255,255,.11); padding-top: 23px; font-size: 11px; }

@media (max-width: 980px) {
  .nav { position: absolute; top: 84px; right: 0; left: 0; display: none; flex-direction: column; align-items: stretch; gap: 0; background: white; padding: 8px 24px 20px; box-shadow: var(--shadow); }
  .nav.open { display: flex; }
  .nav a { border-bottom: 1px solid var(--line); padding: 16px 0; }
  .nav a::after { display: none; }
  .menu-button { display: block; }
  .page-hero__layout { grid-template-columns: 1fr; }
  .catalog-mode .page-hero__layout { grid-template-columns: 1fr; gap: 18px; }
  .product-series-grid, .service-grid { grid-template-columns: repeat(2,1fr); }
  .measurement-guide { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pump-path-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .helium-product-card { grid-template-columns: 145px 1fr; }
  .fittings-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .helium-service-grid { grid-template-columns: 1fr; }
  .helium-service-card { min-height: auto; }
  .helium-model-hero__layout, .helium-model-context__layout { grid-template-columns: 1fr; }
  .helium-model-hero figure { min-height: 300px; }
  .helium-model-switch .shell { grid-template-columns: 1fr; }
  .catalog-grid { grid-template-columns: repeat(3,1fr); }
  .cart-layout { grid-template-columns: 1fr; }
  .cart-summary { position: static; }
  .category-grid { grid-template-columns: 1fr 1fr; }
  .product-detail__hero { grid-template-columns: 1fr; gap: 28px; }
  .product-detail__image { min-height: 340px; }
  .parts-brand-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 700px) {
  .inquiry-page { padding: 50px 0 72px; }
  .inquiry-layout { grid-template-columns: 1fr; gap: 30px; }
  .inquiry-copy { position: static; padding-top: 0; }
  .inquiry-form { padding: 22px; border-radius: 18px; }
  .shell { width: min(100% - 32px,1220px); }
  .topbar__inner > span, .topbar__links a:first-child { display: none; }
  .topbar__inner { justify-content: flex-end; }
  .header__inner { height: 68px; gap: 10px; }
  .brand__logo, .brand__logo--header { width: 48px; height: 38px; }
  .brand__mobile-name { display: block; }
  .brand strong { font-size: 17px; }
  .quote-button { min-height: 38px; padding: 0 12px; }
  .language-toggle { min-width: 40px; height: 38px; padding: 0 10px; }
  .cart-link { width: 40px; min-height: 38px; justify-content: center; padding: 0; }
  .cart-link__label { display: none; }
  .cart-link b { position: absolute; top: -6px; right: -6px; }
  .nav { top: 68px; }
  .section { padding: 74px 0; }
  .section-heading--split, .category-grid, .simple-path__layout, .page-hero__layout, .product-series-grid, .service-grid, .selection-guide__layout, .story__layout, .values-grid, .footer__grid { grid-template-columns: 1fr; }
  .pump-path-grid { grid-template-columns: 1fr; }
  .product-detail { padding-top: 28px; }
  .product-detail__hero { padding: 16px; border-radius: 18px; }
  .product-detail__image { min-height: 270px; }
  .product-detail__facts div { grid-template-columns: 90px 1fr; }
  .kit-contents { padding: 20px 14px; }
  .helium-paths, .helium-product-grid, .helium-service-notes, .helium-service-disclaimer { grid-template-columns: 1fr; }
  .fittings-connection-guide, .fittings-grid { grid-template-columns: 1fr; }
  .fittings-status-notice { grid-template-columns: 1fr; gap: 9px; }
  .fittings-heading { margin-top: 42px; }
  .fitting-card figure { width: 100%; height: auto; aspect-ratio: 16 / 9; padding: 14px; }
  .fittings-bundle-note { align-items: flex-start; flex-direction: column; }
  .fittings-bundle-note > span { text-align: left; }
  .helium-paths { margin-top: -24px; }
  .helium-product-card { grid-template-columns: 108px 1fr; gap: 14px; padding: 12px; }
  .helium-product-card figure { min-height: 150px; }
  .helium-product-card ul { grid-column: 1 / -1; }
  .helium-service-disclaimer { align-items: flex-start; gap: 12px; }
  .helium-model-hero__layout { min-height: auto; gap: 34px; padding: 48px 0 64px; }
  .helium-model-hero h1 { font-size: 46px; }
  .helium-model-hero figure { min-height: 250px; padding: 18px; }
  .helium-spec-table th, .helium-spec-table td { padding: 12px; }
  .helium-model-switch nav { grid-template-columns: 1fr; }
  .section-heading--split { gap: 20px; }
  .section-heading__side { align-items: stretch; }
  .section-heading__side .button { width: 100%; text-align: center; }
  .product-directory--home { padding: 38px 0 58px; }
  .category-card, .category-card--wide { min-height: 174px; grid-column: auto; grid-template-columns: 116px 1fr; padding: 10px; }
  .category-card__visual, .category-card--wide .category-card__visual { width: 116px; min-height: 152px; }
  .category-card h3, .category-card--wide h3 { font-size: 21px; }
  .catalog-shortcut { grid-template-columns: 66px 1fr; padding: 10px; }
  .catalog-shortcut__visual { width: 66px; height: 66px; }
  .catalog-shortcut__arrow { grid-column: 2; justify-self: start; }
  .catalog-search-heading { align-items: flex-start; flex-direction: column; gap: 8px; }
  .parts-category-directory { padding: 15px; }
  .parts-browser-heading { align-items: flex-start; flex-direction: column; gap: 7px; }
  .parts-family-grid { grid-template-columns: 1fr; }
  .parts-brand-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .catalog-mode .page-hero__layout { gap: 14px; padding: 28px 0 22px; }
  .catalog-mode .page-hero__note { display: none; }
  .catalog-mode .catalog-section { padding-top: 22px; }
  .catalog-controls, .parts-catalog-mode .catalog-controls { grid-template-columns: 1fr; }
  .catalog-grid { grid-template-columns: repeat(2,1fr); }
  .cart-hero .shell { padding-top: 42px; padding-bottom: 42px; }
  .cart-section { padding-top: 42px; }
  .cart-item { grid-template-columns: 96px minmax(0,1fr); gap: 12px; padding: 10px; }
  .cart-item figure { height: 96px; }
  .cart-item__footer { grid-column: 1 / -1; grid-template-columns: 1fr auto; }
  .cart-item__footer > strong { grid-column: 1; }
  .cart-quantity { grid-column: 2; grid-row: 1 / 3; }
  .cart-item__footer > b { grid-column: 1; text-align: left; }
  .simple-path__layout, .selection-guide__layout, .story__layout { gap: 44px; }
  .page-hero__layout { min-height: auto; gap: 34px; padding: 60px 0; }
  .page-hero h1 { font-size: 42px; }
  .story__index { position: static; }
  .partner-card { grid-template-columns: 1fr; }
  .partner-card__logo { min-height: 160px; border-right: 0; border-bottom: 1px solid var(--line); }
  .partner-card__logo img { width: 150%; max-width: 470px; }
  .partner-card__content { padding: 28px 24px 32px; }
  .series-card--measurement { grid-template-columns: 135px minmax(0,1fr); min-height: 390px; }
  .series-card--measurement figure { min-height: 250px; }
  .measurement-guide { grid-template-columns: 1fr 1fr; }
  .footer__grid { gap: 40px; }
  .footer-store-info, .footer-store-info__layout { grid-template-columns: 1fr; gap: 22px; }
  .footer-store-info dl { grid-template-columns: 1fr 1fr; }
  .footer__bottom { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 470px) {
  .brand__mobile-name { display: none; }
  .footer-store-info dl { grid-template-columns: 1fr; }
  .parts-browser-tabs { grid-template-columns: 1fr; }
  .parts-family-card { grid-template-columns: minmax(0,1fr); min-height: 104px; }
  .parts-family-card b { justify-self: start; }
  .parts-current-path { flex-wrap: wrap; }
  .parts-current-path em { width: 100%; margin-left: 0; }
  .catalog-grid { grid-template-columns: 1fr; }
  .catalog-toolbar { align-items: flex-start; flex-direction: column; padding: 18px 0; }
  .catalog-card__body { min-height: 220px; }
  .series-card--measurement { grid-template-columns: 1fr; }
  .series-card--measurement figure { min-height: 230px; aspect-ratio: 4 / 3; }
  .measurement-guide { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Cheng-Y AI product assistant */
.ai-assistant { position: fixed; right: 22px; bottom: 22px; z-index: 1500; font-family: "Noto Sans TC","IBM Plex Sans",sans-serif; }
.ai-assistant__launcher { min-height: 58px; display: flex; align-items: center; gap: 9px; border: 0; border-radius: 999px; color: #fff; background: linear-gradient(135deg,#123c85,#245be8 72%,#38bcb1); padding: 7px 18px 7px 7px; box-shadow: 0 18px 46px rgba(20,58,127,.32); cursor: pointer; font-weight: 700; }
.ai-assistant__spark { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.34); border-radius: 50%; color: #123269; background: #fff; font-size: 13px; letter-spacing: .08em; box-shadow: inset 0 0 0 4px rgba(79,201,191,.16); }
.ai-assistant__launcher-label { font-size: 13px; }
.ai-assistant.is-open .ai-assistant__launcher { visibility: hidden; pointer-events: none; }
.ai-assistant__panel { width: min(390px,calc(100vw - 28px)); height: min(650px,calc(100vh - 42px)); display: grid; grid-template-rows: auto minmax(0,1fr) auto auto auto auto; overflow: hidden; border: 1px solid #cad8ec; border-radius: 22px; color: #10295b; background: #fff; box-shadow: 0 28px 80px rgba(13,41,91,.3); }
.ai-assistant__panel[hidden] { display: none; }
.ai-assistant__header { min-height: 72px; display: grid; grid-template-columns: 46px 1fr auto; align-items: center; gap: 10px; color: #fff; background: linear-gradient(135deg,#10295b,#245be8); padding: 10px 12px; }
.ai-assistant__header img { width: 42px; height: 42px; border-radius: 12px; object-fit: contain; background: #fff; }
.ai-assistant__header strong,.ai-assistant__header span { display: block; }
.ai-assistant__header strong { font-size: 14px; }
.ai-assistant__header span { margin-top: 4px; color: #d5e1f6; font-size: 9px; }
.ai-assistant__header span i { width: 7px; height: 7px; display: inline-block; margin-right: 5px; border-radius: 50%; background: #57d2a7; }
.ai-assistant__header span b { font-weight: 500; }
.ai-assistant__header > button { width: 38px; height: 38px; border: 0; border-radius: 50%; color: #fff; background: rgba(255,255,255,.1); cursor: pointer; font-size: 24px; }
.ai-assistant__messages { min-height: 0; overflow-y: auto; display: flex; flex-direction: column; gap: 10px; background: linear-gradient(180deg,#f4f8fd,#fff); padding: 15px; }
.ai-assistant__message { max-width: 88%; white-space: pre-wrap; line-height: 1.6; font-size: 12px; }
.ai-assistant__message > div:first-child { border: 1px solid #d6e1ef; border-radius: 5px 15px 15px; background: #fff; padding: 10px 12px; box-shadow: 0 6px 18px rgba(26,66,130,.06); }
.ai-assistant__message.is-user { align-self: flex-end; }
.ai-assistant__message.is-user > div:first-child { color: #fff; border-color: #245be8; border-radius: 15px 5px 15px 15px; background: #245be8; }
.ai-assistant__message.is-waiting { color: #647a99; border-radius: 5px 15px 15px; background: #fff; padding: 10px 12px; }
.ai-assistant__matches { display: grid; gap: 6px; margin-top: 7px; }
.ai-assistant__matches a { display: grid; gap: 3px; border: 1px solid #cfdbeb; border-radius: 11px; color: #14346d; background: #fff; padding: 9px 10px; }
.ai-assistant__matches a:hover { border-color: #245be8; }
.ai-assistant__matches strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; }
.ai-assistant__matches span { color: #6a7f9e; font-size: 8px; }
.ai-assistant__quick { display: flex; gap: 6px; overflow-x: auto; padding: 8px 12px 4px; }
.ai-assistant__quick[hidden] { display: none; }
.ai-assistant__quick button { flex: 0 0 auto; min-height: 32px; border: 1px solid #cbd9ec; border-radius: 999px; color: #245be8; background: #fff; padding: 0 10px; cursor: pointer; font-size: 9px; font-weight: 700; }
.ai-assistant__sync-notice { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 8px; margin: 4px 12px 2px; border: 1px solid #d6e1ef; border-radius: 10px; background: #f7faff; padding: 8px 10px; color: #405a80; }
.ai-assistant__sync-notice span,.ai-assistant__sync-notice b,.ai-assistant__sync-notice small { display: block; }
.ai-assistant__sync-notice b { font-size: 9px; }
.ai-assistant__sync-notice small { margin-top: 3px; color: #7185a2; font-size: 8px; line-height: 1.4; }
.ai-assistant__sync-notice a { color: #245be8; font-size: 8px; font-weight: 700; white-space: nowrap; text-decoration: underline; text-underline-offset: 2px; }

.privacy-content { max-width: 980px; }
.privacy-content__intro { max-width: 760px; color: #536986; font-size: 16px; line-height: 1.9; }
.privacy-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-top: 30px; }
.privacy-grid article { border: 1px solid #d6e1ef; border-radius: 18px; background: #fff; padding: 24px; }
.privacy-grid h2 { margin: 0 0 10px; color: #10295b; font-size: 20px; }
.privacy-grid p,.privacy-grid li { color: #536986; line-height: 1.8; }
.privacy-grid ul { margin: 0; padding-left: 20px; }
.privacy-contact { margin-top: 20px; border-radius: 18px; color: #fff; background: #173c7a; padding: 24px; }
.privacy-contact a { color: #fff; text-decoration: underline; }
.ai-assistant__quote { margin: 7px 12px 2px; min-height: 38px; border: 1px solid #245be8; border-radius: 10px; color: #245be8; background: #f5f8ff; cursor: pointer; font-size: 10px; font-weight: 700; }
.ai-assistant__composer { display: grid; grid-template-columns: minmax(0,1fr) 62px; align-items: stretch; gap: 8px; border-top: 1px solid #e1e8f2; padding: 10px 11px; }
.ai-assistant__composer[hidden] { display: none; }
.ai-assistant__composer textarea { width: 100%; min-width: 0; height: 44px; min-height: 44px; max-height: 44px; resize: none; overflow-y: auto; border: 1px solid #cbd8e9; border-radius: 12px; color: #10295b; background: #fff; padding: 10px 11px; outline: 0; font: inherit; font-size: 11px; line-height: 1.45; box-sizing: border-box; }
.ai-assistant__composer textarea:focus { border-color: #245be8; box-shadow: 0 0 0 3px rgba(36,91,232,.1); }
.ai-assistant__composer button,.ai-assistant__inquiry > button { min-height: 44px; border: 0; border-radius: 11px; color: #fff; background: #245be8; padding: 0 10px; cursor: pointer; font-size: 10px; font-weight: 700; }
.ai-assistant__composer.is-sending button { opacity: .5; pointer-events: none; }
.ai-assistant__notice { margin: 0; color: #7286a3; background: #fff; padding: 0 12px 10px; font-size: 8px; line-height: 1.5; }
.ai-assistant__inquiry { min-height: 0; grid-row: 2 / 8; overflow-y: auto; display: grid; align-content: start; gap: 10px; background: #f7faff; padding: 14px; }
.ai-assistant__inquiry[hidden] { display: none; }
.ai-assistant__inquiry-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.ai-assistant__inquiry-head strong { font-size: 14px; }
.ai-assistant__inquiry-head button { border: 0; color: #245be8; background: transparent; cursor: pointer; font-size: 9px; font-weight: 700; }
.ai-assistant__inquiry label { display: grid; gap: 5px; color: #4d6383; font-size: 9px; font-weight: 700; }
.ai-assistant__inquiry input,.ai-assistant__inquiry textarea { width: 100%; border: 1px solid #cbd8e9; border-radius: 9px; background: #fff; padding: 9px; font: inherit; font-size: 10px; }
.ai-assistant__inquiry textarea { resize: vertical; }
.ai-assistant__honeypot { position: absolute!important; left: -10000px!important; }
.ai-assistant__inquiry > p { margin: 0; color: #245be8; font-size: 9px; line-height: 1.5; }
.ai-assistant__inquiry-privacy { border: 1px solid #d6e1ef; border-radius: 9px; color: #536986!important; background: #fff; padding: 9px; }
.ai-assistant__inquiry-privacy a { color: #245be8; font-weight: 700; }

@media (max-width: 600px) {
  .ai-assistant { right: 12px; bottom: 12px; }
  .ai-assistant__launcher { min-height: 52px; padding-right: 14px; }
  .privacy-grid { grid-template-columns: 1fr; }
  .ai-assistant__spark { width: 38px; height: 38px; }
  .ai-assistant__panel { width: calc(100vw - 24px); height: min(680px,calc(100dvh - 24px)); border-radius: 18px; }
}

/* CY-RGA selector */
.rga-selector { background: linear-gradient(180deg,#f5f9ff 0%,#fff 100%); }
.rga-selector__heading { margin-bottom: 26px; }
.rga-selector__form { display: grid; gap: 16px; }
.rga-selector__form fieldset { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin: 0; border: 1px solid #cfdbec; border-radius: 20px; background: #fff; padding: 24px; box-shadow: 0 12px 34px rgba(18,60,133,.06); }
.rga-selector__form legend { color: #10295b; background: #fff; padding: 0 10px 0 0; font-size: 18px; font-weight: 800; }
.rga-selector__form legend span { width: 30px; height: 30px; display: inline-grid; place-items: center; margin-right: 8px; border-radius: 50%; color: #fff; background: #245be8; font-size: 13px; }
.rga-selector__field { min-width: 0; display: grid; align-content: start; gap: 8px; color: #173c7a; font-weight: 750; }
.rga-selector__field--wide { grid-column: 1 / -1; }
.rga-selector__field > input,.rga-selector__field > select { width: 100%; min-height: 48px; border: 1px solid #c8d6e9; border-radius: 12px; color: #173c7a; background: #fff; padding: 0 13px; font: inherit; font-weight: 500; box-sizing: border-box; }
.rga-selector__field > input:focus,.rga-selector__field > select:focus { border-color: #245be8; outline: 3px solid rgba(36,91,232,.12); }
.rga-selector__checks { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.rga-selector__checks label { min-height: 46px; display: flex; align-items: center; gap: 8px; border: 1px solid #d5e0ee; border-radius: 12px; color: #405a80; background: #f8fbff; padding: 8px 11px; cursor: pointer; font-size: 14px; font-weight: 650; }
.rga-selector__checks label:has(input:checked) { border-color: #245be8; color: #173c7a; background: #edf3ff; }
.rga-selector__checks input { width: 18px; height: 18px; accent-color: #245be8; }
.rga-selector__submit { display: flex; align-items: center; gap: 18px; }
.rga-selector__submit p { margin: 0; color: #687e9d; }
.rga-result { display: grid; gap: 20px; margin-top: 24px; border-radius: 22px; color: #fff; background: linear-gradient(135deg,#123c85,#245be8); padding: 28px; box-shadow: 0 20px 48px rgba(25,68,154,.2); }
.rga-result[hidden] { display: none; }
.rga-result .eyebrow,.rga-result h3,.rga-result p { color: inherit; }
.rga-result h3 { margin: 6px 0 8px; font-size: clamp(28px,4vw,44px); }
.rga-result__details { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.rga-result__details > div { border: 1px solid rgba(255,255,255,.24); border-radius: 14px; background: rgba(255,255,255,.09); padding: 16px; }
.rga-result__details ul { margin: 10px 0 0; padding-left: 20px; line-height: 1.8; }
.rga-result__notice { margin: 0; color: #dce7ff!important; font-size: 13px; }
.rga-result .button { width: max-content; color: #173c7a; background: #fff; }

@media (max-width: 760px) {
  .rga-selector__form fieldset,.rga-result__details { grid-template-columns: 1fr; }
  .rga-selector__checks { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .rga-selector__submit { align-items: stretch; flex-direction: column; }
  .rga-selector__submit .button,.rga-result .button { width: 100%; text-align: center; }
}

/* CY-RGA OEM product platform */
.rga-products { background: #fff; }
.rga-paths { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin-top: 26px; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: var(--line); }
.rga-paths a { display: grid; gap: 5px; color: var(--ink); background: #fff; padding: 18px 20px; }
.rga-paths a:hover { background: #f4f8ff; }
.rga-paths strong { font-size: 15px; }
.rga-paths span { color: var(--muted); font-size: 10px; line-height: 1.5; }
.rga-product-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.rga-product-card { grid-template-columns: 1fr; align-content: start; }
.rga-product-card .helium-product-card__image-link { width: 100%; min-width: 0; max-width: 100%; overflow: hidden; background: #fff; }
.rga-product-card figure { width: 100%; height: auto; min-height: 0; aspect-ratio: 3 / 2; box-sizing: border-box; overflow: hidden; background: #fff; padding: 24px; }
.rga-product-card img { width: 100%; height: 100%; min-width: 0; min-height: 0; max-width: 100%; max-height: 100%; display: block; object-fit: contain; object-position: 50% 50%; }
.rga-product-card ul { min-height: 74px; }
.rga-model-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.rga-model-links a { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #b8ccec; border-radius: 10px; color: var(--accent); background: #fff; padding: 0 14px; font-size: 11px; font-weight: 800; }
.rga-model-links a:hover { border-color: var(--accent); background: #f1f6ff; }
.rga-series-comparison { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin-top: 18px; border: 1px solid #cbd9eb; border-radius: 16px; overflow: hidden; background: #cbd9eb; }
.rga-series-comparison div { display: grid; gap: 7px; background: #f7faff; padding: 18px; }
.rga-series-comparison strong { color: var(--ink); font-size: 16px; }
.rga-series-comparison span { color: var(--muted); font-size: 11px; }
.rga-series-comparison b { color: #238d6f; font-size: 12px; }
.rga-spec-note { margin: 14px 0 0; color: #7184a0; font-size: 10px; line-height: 1.7; }
.rga-insight { background: #f2f7fb; }
.rga-insight__layout,.rga-model-software__layout { display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: 34px; }
.rga-insight figure,.rga-model-software figure { margin: 0; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: #fff; padding: 10px; box-shadow: 0 16px 38px rgba(31,75,143,.09); }
.rga-insight figure img,.rga-model-software figure img { width: 100%; height: auto; display: block; border-radius: 10px; }
.rga-insight h2,.rga-model-software h2 { margin: 5px 0 12px; font-size: clamp(28px,4vw,44px); }
.rga-insight p,.rga-model-software p { color: var(--muted); line-height: 1.75; }
.rga-insight dl { display: grid; gap: 9px; margin: 18px 0 0; }
.rga-insight dl div { border-left: 3px solid #33a993; background: #fff; padding: 10px 12px; }
.rga-insight dt { color: var(--ink); font-size: 12px; font-weight: 800; }
.rga-insight dd { margin: 4px 0 0; color: var(--muted); font-size: 10px; line-height: 1.6; }
.rga-model-hero figure img { width: min(100%,520px); max-height: 390px; }
.rga-model-software { background: #fff; }
.rga-software-editions { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 22px; }
.rga-software-editions span { border-radius: 999px; color: #175879; background: #e8f5f1; padding: 9px 12px; font-size: 10px; font-weight: 800; }
.rga-product-comparison { background: #f5f8fc; }
.rga-comparison__heading { margin-bottom: 24px; }
.rga-comparison__figure { margin: 0; }
.rga-comparison__scroll { width: 100%; overflow-x: auto; border: 1px solid #cbd9eb; border-radius: 18px; background: #fff; box-shadow: 0 16px 38px rgba(31,75,143,.09); -webkit-overflow-scrolling: touch; }
.rga-comparison__scroll:focus-visible { outline: 3px solid rgba(36,91,232,.28); outline-offset: 3px; }
.rga-comparison__link { width: 100%; min-width: 900px; display: block; }
.rga-comparison__link img { width: 100%; height: auto; display: block; }
.rga-comparison__figure figcaption { margin-top: 10px; color: #667c9d; font-size: 11px; text-align: right; }

@media (max-width: 980px) {
  .rga-product-grid { grid-template-columns: 1fr; }
  .rga-product-card { grid-template-columns: 210px 1fr; }
  .rga-product-card figure { height: auto; min-height: 0; padding: 18px; }
  .rga-product-card ul { min-height: 0; }
}

@media (max-width: 760px) {
  .rga-paths,.rga-series-comparison,.rga-insight__layout,.rga-model-software__layout { grid-template-columns: 1fr; }
  .rga-product-card { grid-template-columns: 118px 1fr; gap: 14px; padding: 12px; }
  .rga-product-card figure { height: auto; min-height: 0; padding: 10px; }
  .rga-product-card ul,.rga-model-links { grid-column: 1 / -1; }
  .rga-model-links a { flex: 1 1 auto; }
  .rga-comparison__heading { margin-bottom: 16px; }
  .rga-comparison__scroll { border-radius: 12px; }
  .rga-comparison__link { min-width: 920px; }
  .rga-comparison__figure figcaption { text-align: left; }
}

/* Vacuum pump selector */
.equipment-paths { grid-template-columns: repeat(3,minmax(0,1fr)); }
.pump-selector-promo { padding: 0 0 22px; background: #f4f8ff; }
.pump-selector-promo__layout { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 32px 38px; border: 1px solid #cbdcf7; border-radius: 24px; background: linear-gradient(120deg,#fff,#e9f3ff); box-shadow: 0 18px 45px rgba(28,76,150,.08); }
.pump-selector-promo h2 { margin: 4px 0 8px; font-size: clamp(28px,3vw,42px); }
.pump-selector-promo p:last-child { margin: 0; color: var(--muted); line-height: 1.75; }
.pump-selector-promo .button { flex: 0 0 auto; }
.pump-selector-page { background: #f6f9fe; }
.pump-selector-hero { background: radial-gradient(circle at 82% 15%,rgba(79,201,191,.22),transparent 27%),linear-gradient(145deg,#fff,#eaf3ff); }
.pump-selector-hero__layout { display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: 70px; padding: 64px 0; }
.pump-selector-hero h1 { margin: 12px 0 18px; font-size: clamp(42px,5vw,66px); letter-spacing: -.045em; }
.pump-selector-hero p:last-child { max-width: 700px; color: var(--muted); font-size: 18px; line-height: 1.8; }
.pump-selector-hero aside { display: grid; gap: 12px; padding: 28px; border-left: 4px solid var(--accent); border-radius: 0 20px 20px 0; background: rgba(255,255,255,.86); box-shadow: var(--shadow); }
.pump-selector-hero aside strong { font-size: 20px; }
.pump-selector-hero aside span { color: var(--muted); line-height: 1.75; }
.pump-selector-layout { display: grid; grid-template-columns: minmax(220px,.34fr) minmax(0,1fr); align-items: start; gap: 52px; }
.pump-selector-intro { position: sticky; top: 120px; }
.pump-selector-intro h2 { margin: 8px 0 14px; font-size: 40px; }
.pump-selector-intro p { color: var(--muted); line-height: 1.8; }
.pump-selector-intro ol { display: grid; gap: 10px; padding-left: 22px; color: #31527f; font-weight: 700; }
.pump-selector-form { display: grid; gap: 24px; }
.pump-selector-form fieldset,.pump-contact-fields,.pump-advanced { margin: 0; padding: 28px; border: 1px solid #ccdaf0; border-radius: 22px; background: #fff; box-shadow: 0 16px 42px rgba(28,76,150,.07); }
.pump-selector-form fieldset.has-error { border-color: #c43a45; box-shadow: 0 0 0 3px rgba(196,58,69,.1); }
.pump-selector-form legend { display: flex; align-items: center; gap: 12px; max-width: 100%; padding: 0 8px; }
.pump-selector-form legend > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--accent); color: #fff; font-size: 15px; }
.pump-selector-form legend strong { font-size: 20px; }
.pump-selector-form legend small { color: var(--muted); font-weight: 700; }
.pump-option-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 12px; }
.pump-option-grid label { position: relative; cursor: pointer; }
.pump-option-grid input { position: absolute; opacity: 0; pointer-events: none; }
.pump-option-grid label > span { display: flex; align-items: center; min-height: 56px; padding: 13px 16px 13px 48px; border: 1px solid #d2def0; border-radius: 14px; color: #263d61; background: #f9fbff; font-weight: 700; line-height: 1.45; }
.pump-option-grid label > span::before { content: ""; position: absolute; left: 17px; width: 18px; height: 18px; border: 2px solid #9db2cf; border-radius: 50%; background: #fff; }
.pump-option-grid--checks label > span::before { border-radius: 5px; }
.pump-option-grid input:focus-visible + span { outline: 3px solid rgba(36,91,232,.2); outline-offset: 2px; }
.pump-option-grid input:checked + span { border-color: var(--accent); color: #173c7a; background: #edf4ff; box-shadow: inset 0 0 0 1px var(--accent); }
.pump-option-grid input:checked + span::before { border: 5px solid var(--accent); }
.pump-option-grid--checks input:checked + span::before { border-width: 2px; background: var(--accent); box-shadow: inset 0 0 0 4px #fff; }
.pump-question-error { min-height: 20px; margin: 10px 0 0; color: #ae2633; font-weight: 700; }
.pump-advanced { padding: 0; overflow: hidden; }
.pump-advanced summary { display: flex; align-items: center; justify-content: space-between; padding: 24px 28px; cursor: pointer; list-style: none; }
.pump-advanced summary::-webkit-details-marker { display: none; }
.pump-advanced summary span { display: grid; gap: 4px; }
.pump-advanced summary strong { font-size: 20px; }
.pump-advanced summary small { color: var(--muted); }
.pump-advanced summary b { font-size: 28px; color: var(--accent); transition: transform .2s ease; }
.pump-advanced[open] summary b { transform: rotate(45deg); }
.pump-advanced > div { padding: 0 28px 28px; }
.pump-advanced label,.pump-contact-grid label { display: grid; gap: 8px; color: #263d61; font-size: 14px; font-weight: 700; }
.pump-selector-form textarea,.pump-contact-grid input { width: 100%; padding: 13px 14px; border: 1px solid #cbd8e9; border-radius: 12px; background: #fff; color: var(--ink); outline: none; }
.pump-selector-form textarea { resize: vertical; }
.pump-selector-form textarea:focus,.pump-contact-grid input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(36,91,232,.12); }
.pump-contact-fields { display: grid; gap: 24px; }
.pump-contact-fields h3 { margin: 5px 0 8px; font-size: 30px; }
.pump-contact-fields > div:first-child > p:last-child { margin: 0; color: var(--muted); }
.pump-contact-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.pump-contact-grid__wide { grid-column: 1/-1; }
.pump-selector-submit { display: grid; gap: 12px; }
.pump-selector-submit .button { width: 100%; min-height: 58px; font-size: 18px; }

@media (max-width: 900px) {
  .equipment-paths { grid-template-columns: 1fr; }
  .pump-selector-hero__layout,.pump-selector-layout { grid-template-columns: 1fr; gap: 32px; }
  .pump-selector-intro { position: static; }
}

@media (max-width: 620px) {
  .pump-selector-promo__layout { align-items: stretch; flex-direction: column; padding: 24px; }
  .pump-selector-promo .button { width: 100%; }
  .pump-selector-hero__layout { padding: 42px 0; }
  .pump-selector-hero h1 { font-size: 40px; }
  .pump-selector-hero aside { padding: 22px; }
  .pump-selector-form fieldset,.pump-contact-fields { padding: 21px 18px; }
  .pump-selector-form legend { align-items: flex-start; flex-wrap: wrap; }
  .pump-selector-form legend strong { flex: 1; min-width: 190px; font-size: 18px; }
  .pump-selector-form legend small { margin-left: 46px; }
  .pump-option-grid,.pump-contact-grid { grid-template-columns: 1fr; }
  .pump-contact-grid__wide { grid-column: auto; }
}

/* 2026 full vacuum product guide */
.vacuum-guide { background: #f6f9fd; }
.vacuum-guide-hero { color: #fff; background: radial-gradient(circle at 84% 14%,rgba(73,210,188,.28),transparent 26%),linear-gradient(135deg,#0d2d65 0%,#174f9e 58%,#167a86 100%); }
.vacuum-guide-hero__layout { min-height: 520px; display: grid; grid-template-columns: 1.05fr .7fr; align-items: center; gap: 74px; padding-top: 72px; padding-bottom: 72px; }
.vacuum-guide-hero .breadcrumb,.vacuum-guide-hero .breadcrumb a,.vacuum-guide-hero .eyebrow { color: #dceaff; }
.vacuum-guide-hero h1 { margin: 10px 0 20px; font-size: clamp(48px,5.8vw,74px); line-height: 1.05; letter-spacing: -.055em; }
.vacuum-guide-hero__lead { max-width: 720px; margin: 0; color: #dbe7f8; font-size: 17px; line-height: 1.85; }
.vacuum-guide-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.vacuum-guide-hero__actions .button--outline { color: #fff; border-color: rgba(255,255,255,.42); background: rgba(255,255,255,.08); }
.vacuum-guide-hero__facts { display: grid; gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.2); border-radius: 22px; background: rgba(255,255,255,.2); box-shadow: 0 24px 65px rgba(3,19,50,.22); }
.vacuum-guide-hero__facts div { display: grid; grid-template-columns: 72px 1fr; align-items: center; background: rgba(7,32,77,.58); padding: 20px; }
.vacuum-guide-hero__facts strong { font-size: 30px; }
.vacuum-guide-hero__facts span { color: #d9e7f9; line-height: 1.55; }
.vacuum-guide-nav { position: sticky; z-index: 20; top: 84px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.94); backdrop-filter: blur(12px); }
.vacuum-guide-nav__inner { display: flex; gap: 8px; overflow-x: auto; padding-top: 12px; padding-bottom: 12px; }
.vacuum-guide-nav a { flex: 0 0 auto; border: 1px solid #cddbef; border-radius: 999px; color: #31527f; background: #fff; padding: 9px 14px; font-size: 11px; font-weight: 800; }
.vacuum-guide-nav a:hover { color: #fff; border-color: var(--accent); background: var(--accent); }
.vacuum-guide-intro { padding-bottom: 36px; }
.vacuum-guide-intro__layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 80px; }
.vacuum-guide-intro h2 { margin: 5px 0 16px; font-size: clamp(34px,4.4vw,54px); line-height: 1.15; letter-spacing: -.04em; }
.vacuum-guide-intro p { color: var(--muted); line-height: 1.85; }
.vacuum-guide-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.vacuum-guide-steps article { border: 1px solid #d6e1ef; border-radius: 18px; background: #fff; padding: 22px; }
.vacuum-guide-steps span { color: var(--accent); font-size: 11px; font-weight: 800; }
.vacuum-guide-steps h3 { margin: 12px 0 8px; font-size: 18px; }
.vacuum-guide-steps p { margin: 0; font-size: 12px; }
.portfolio-category-map { scroll-margin-top: 142px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #fff; }
.portfolio-category-map__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.portfolio-category-map__grid a { min-height: 145px; display: flex; flex-direction: column; border: 1px solid #d4e0ef; border-radius: 18px; background: #f8fbff; padding: 20px; transition: .2s ease; }
.portfolio-category-map__grid a:hover { border-color: #91afe1; transform: translateY(-3px); box-shadow: 0 12px 30px rgba(31,75,143,.08); }
.portfolio-category-map__grid b { color: var(--accent); font-size: 11px; }
.portfolio-category-map__grid strong { margin-top: 14px; color: var(--ink); font-size: 17px; line-height: 1.4; }
.portfolio-category-map__grid span { margin-top: auto; padding-top: 14px; color: #54708f; font-size: 10px; line-height: 1.55; }
.vacuum-family { scroll-margin-top: 142px; padding: 52px 0; }
.vacuum-family:nth-of-type(even) { background: #fff; }
.vacuum-family__heading { display: grid; grid-template-columns: 92px minmax(0,1fr) minmax(260px,.55fr); align-items: start; gap: 26px; margin-bottom: 30px; }
.vacuum-family__code { width: 76px; height: 76px; display: grid; place-items: center; border-radius: 24px; color: #fff; background: linear-gradient(135deg,var(--accent-dark),var(--accent)); font-size: 30px; font-weight: 800; box-shadow: 0 14px 32px rgba(36,91,232,.2); }
.vacuum-family__heading h2 { margin: 0 0 10px; font-size: clamp(34px,4vw,50px); letter-spacing: -.04em; }
.vacuum-family__heading p { margin: 0; color: var(--muted); line-height: 1.8; }
.vacuum-family__status { border-left: 3px solid #35a992; border-radius: 0 14px 14px 0; color: #48627f; background: #eef8f5; padding: 16px; font-size: 11px; line-height: 1.7; }
.vacuum-family__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.vacuum-family-card { min-height: 220px; display: flex; flex-direction: column; border: 1px solid #d5e0ef; border-radius: 18px; background: #fff; padding: 22px; box-shadow: 0 10px 28px rgba(31,75,143,.055); }
.vacuum-family:nth-of-type(even) .vacuum-family-card { background: #f8fbff; }
.vacuum-family-card small { color: var(--accent); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.vacuum-family-card h3 { margin: 12px 0 9px; color: var(--ink); font-size: 19px; line-height: 1.4; }
.vacuum-family-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.75; }
.vacuum-family-card ul { margin: 16px 0 0; padding-left: 18px; color: #526b8d; font-size: 11px; line-height: 1.8; }
.vacuum-family-card a { align-self: flex-start; margin-top: auto; padding-top: 18px; color: var(--accent); font-size: 11px; font-weight: 800; }
.vacuum-guide-source { background: linear-gradient(135deg,#102f68,#173c7a); }
.vacuum-guide-source__layout { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 40px; color: #fff; }
.vacuum-guide-source h2 { margin: 6px 0 10px; font-size: clamp(32px,4vw,48px); }
.vacuum-guide-source p { max-width: 780px; margin: 0; color: #d5e2f4; line-height: 1.8; }
.vacuum-guide-source__note { margin-top: 12px!important; color: #a9bddb!important; font-size: 10px; }

@media (max-width: 980px) {
  .manual-hero__layout,.vacuum-guide-hero__layout { grid-template-columns: 1fr; }
  .manual-hero__layout { gap: 42px; }
  .authorized-portfolio { grid-template-columns: 1fr; }
  .vacuum-guide-intro__layout { grid-template-columns: 1fr; gap: 32px; }
  .portfolio-category-map__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .vacuum-family__heading { grid-template-columns: 76px minmax(0,1fr); }
  .vacuum-family__status { grid-column: 2; }
  .vacuum-family__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 700px) {
  .manual-hero__layout { min-height: auto; padding-top: 52px; padding-bottom: 52px; }
  .manual-hero h1 { font-size: 44px; }
  .manual-hero__actions,.vacuum-guide-hero__actions { align-items: stretch; flex-direction: column; }
  .manual-hero__actions .button,.vacuum-guide-hero__actions .button { width: 100%; text-align: center; }
  .manual-hero__map { padding: 10px; }
  .manual-hero__map--categories { grid-template-columns: 1fr; }
  .manual-hero__map--categories a:last-child { grid-column: auto; }
  .manual-hero__map a { min-height: 78px; grid-template-columns: 44px 1fr; padding: 10px; }
  .manual-hero__map a > span { width: 40px; height: 40px; }
  .vacuum-guide-hero__layout { min-height: auto; gap: 36px; padding-top: 50px; padding-bottom: 56px; }
  .vacuum-guide-hero h1 { font-size: 43px; }
  .vacuum-guide-nav { top: 68px; }
  .vacuum-guide-steps,.vacuum-family__grid { grid-template-columns: 1fr; }
  .portfolio-category-map__grid { grid-template-columns: 1fr; }
  .vacuum-family { scroll-margin-top: 128px; }
  .vacuum-family__heading { grid-template-columns: 58px minmax(0,1fr); gap: 14px; }
  .vacuum-family__code { width: 56px; height: 56px; border-radius: 17px; font-size: 23px; }
  .vacuum-family__status { grid-column: 1 / -1; }
  .vacuum-guide-source__layout { grid-template-columns: 1fr; }
  .vacuum-guide-source__layout .button { width: 100%; text-align: center; }
}
