:root {
  --ink:#17212a;
  --muted:#63707b;
  --line:#d8dee4;
  --soft:#f4f6f8;
  --blue:#1769c2;
  --blue-dark:#0f4e92;
  --blue-soft:#eaf3fc;
  --green:#24926b;
  --amber:#a66a16;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font-family:Arial,Helvetica,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
img { display:block; max-width:100%; }
.container { width:min(1180px,calc(100% - 48px)); margin:0 auto; }
.notice-bar { padding:8px 0; color:#eaf3fb; background:#17344f; font-size:11px; }
.site-header { position:sticky; top:0; z-index:30; border-bottom:1px solid var(--line); background:rgba(255,255,255,.97); }
.header-inner { min-height:66px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:inline-flex; align-items:center; gap:11px; font-size:16px; font-weight:700; letter-spacing:.13em; }
.header-inner nav { display:flex; align-items:center; gap:27px; }
.header-inner nav a { color:#3f4a54; font-size:13px; }
.header-inner nav a:hover,.header-inner nav a[aria-current="page"] { color:var(--blue); }
.nav-finder { padding:9px 13px; border:1px solid #a9bfd4; background:#f6faff; color:var(--blue)!important; font-weight:700; }
.brand-mark { position:relative; display:inline-block; width:26px; height:26px; color:#1c2832; flex:none; }
.brand-mark i { display:block; position:absolute; }
.brand-mark .arm { width:11px; height:4px; border-radius:1px; background:currentColor; }
.brand-mark .nw { top:5px; left:1px; transform:rotate(45deg); }
.brand-mark .ne { top:5px; right:1px; transform:rotate(-45deg); }
.brand-mark .sw { bottom:5px; left:1px; transform:rotate(-45deg); }
.brand-mark .se { right:1px; bottom:5px; transform:rotate(45deg); }
.brand-mark .core { width:5px; height:5px; top:11px; left:11px; border-radius:1px; background:var(--blue); }
.brand-mark {
  background:url("/favicon.svg") center/contain no-repeat;
}
.brand-mark i {
  display:none;
}

.eyebrow,.section-label { margin:0 0 15px; color:var(--blue); font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.home-hero { position:relative; min-height:510px; overflow:hidden; border-bottom:1px solid var(--line); background:#eef3f6; }
.hero-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.95) 36%,rgba(255,255,255,.48) 63%,rgba(255,255,255,.08) 100%); }
.hero-inner { position:relative; z-index:1; min-height:510px; display:flex; align-items:center; }
.hero-copy-block { max-width:575px; padding:70px 0; }
.hero-copy-block h1 { margin:0; font-size:54px; line-height:1.05; letter-spacing:-.04em; font-weight:650; }
.hero-copy-block > p:not(.eyebrow) { max-width:520px; margin:21px 0 0; color:#53616c; font-size:17px; line-height:1.6; }
.hero-actions { display:flex; gap:13px; margin-top:29px; }
.primary-button,.secondary-button { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:11px 18px; border:1px solid var(--blue); font-size:12px; font-weight:700; }
.primary-button { color:#fff; background:var(--blue); }
.primary-button:hover { background:var(--blue-dark); }
.secondary-button { color:var(--blue); background:#fff; }
.secondary-button:hover { background:var(--blue-soft); }
.image-note { position:absolute; right:18px; bottom:14px; z-index:2; padding:6px 9px; color:#53616c; background:rgba(255,255,255,.88); font-size:9px; }

.finder-wrap { padding:42px 0 55px; border-bottom:1px solid var(--line); background:#fff; scroll-margin-top:96px; }
.finder-heading { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:24px; }
.finder-heading h2 { margin:0; font-size:34px; letter-spacing:-.025em; }
.finder-heading p { max-width:430px; margin:0; color:var(--muted); font-size:12px; line-height:1.6; }
.finder { display:grid; grid-template-columns:1fr 1.25fr 1fr; border:1px solid var(--line); background:var(--soft); }
.finder-step { padding:20px; border-right:1px solid var(--line); }
.finder-step:last-of-type { border-right:0; }
.step-title { display:flex; align-items:center; gap:9px; margin-bottom:13px; font-size:11px; font-weight:700; }
.step-number { display:grid; place-items:center; width:22px; height:22px; color:#fff; border-radius:50%; background:var(--blue); font-size:10px; }
.choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.choice-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.choice-button { min-height:76px; padding:11px 8px; color:#46535e; border:1px solid #ccd4dc; background:#fff; cursor:pointer; text-align:center; transition:.15s ease; }
.choice-button:hover { border-color:#7d9fbd; transform:translateY(-1px); }
.choice-button[aria-pressed="true"] { color:var(--blue-dark); border-color:var(--blue); background:var(--blue-soft); box-shadow:inset 0 0 0 1px var(--blue); }
.choice-symbol { display:grid; place-items:center; width:38px; height:29px; margin:0 auto 7px; color:#314a60; border:1px solid #90a4b5; border-radius:5px; background:#f8fbfd; font-size:9px; font-weight:700; letter-spacing:.04em; }
.choice-button[aria-pressed="true"] .choice-symbol { color:#fff; border-color:var(--blue); background:var(--blue); }
.choice-label { display:block; font-size:10px; font-weight:700; line-height:1.25; }
.choice-sub { display:block; margin-top:3px; color:#7a858f; font-size:8px; line-height:1.2; }
.finder-result { grid-column:1/-1; display:grid; grid-template-columns:240px 1fr; min-height:180px; border-top:1px solid var(--line); background:#fff; }
.result-path { display:flex; align-items:center; justify-content:center; gap:8px; padding:24px; border-right:1px solid var(--line); background:#f8fafb; }
.path-node { min-width:62px; padding:10px 8px; border:1px solid #a9b7c3; background:#fff; font-size:10px; font-weight:700; text-align:center; }
.path-line { position:relative; width:40px; height:2px; overflow:hidden; background:#b9c6d1; }
.path-line::after { content:""; position:absolute; top:-2px; left:-8px; width:6px; height:6px; border-radius:50%; background:var(--blue); animation:signal-flow 1.8s linear infinite; }
@keyframes signal-flow { to { transform:translateX(56px); } }
.result-content { padding:22px 25px; }
.result-top { display:flex; align-items:start; justify-content:space-between; gap:20px; }
.result-top h3 { margin:0; font-size:20px; }
.result-top p { margin:7px 0 0; color:var(--muted); font-size:11px; }
.status { display:inline-flex; align-items:center; gap:6px; padding:6px 9px; border:1px solid #c6d6e4; color:#36546f; background:#f4f8fb; font-size:9px; font-weight:700; white-space:nowrap; }
.status::before { content:""; width:6px; height:6px; border-radius:50%; background:var(--blue); }
.status.planned { color:#785a2f; border-color:#e2cfaf; background:#fff9ef; }
.status.planned::before { background:#b27b28; }
.result-options { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin-top:18px; }
.result-option { display:flex; align-items:center; justify-content:space-between; gap:15px; min-height:55px; padding:12px 14px; border:1px solid var(--line); background:#fff; }
.result-option strong { display:block; font-size:11px; }
.result-option span { display:block; margin-top:4px; color:var(--muted); font-size:9px; }
.result-option b { color:var(--blue); font-size:16px; }
.result-option:hover { border-color:#8ba7bf; background:#f8fbfd; }

.section-space { padding:72px 0; }
.section-head { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:26px; }
.section-head h2 { margin:0; font-size:34px; letter-spacing:-.025em; }
.section-head > a { color:var(--blue); font-size:12px; font-weight:700; }
.section-hint { max-width:380px; color:var(--muted); font-size:11px; line-height:1.55; }
.area-directory-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:16px; }
.product-area-card { overflow:hidden; border:1px solid var(--line); background:#fff; }
a.product-area-card:hover { border-color:#86a2b9; box-shadow:0 8px 28px rgba(24,50,72,.08); }
.product-area-media { position:relative; height:245px; overflow:hidden; border-bottom:1px solid var(--line); background:#e9eef2; }
.product-area-media > img { width:100%; height:100%; object-fit:cover; }
.product-area-media::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(13,30,43,.32)); pointer-events:none; }
.area-count { position:absolute; left:16px; bottom:15px; z-index:2; padding:7px 9px; color:#fff; border:1px solid rgba(255,255,255,.4); background:rgba(18,50,76,.88); font-size:9px; font-weight:700; }
.area-count.planned { color:#596570; border-color:#cfd7de; background:rgba(255,255,255,.92); }
.product-area-copy { padding:27px; }
.area-state { display:inline-block; margin-bottom:13px; color:var(--blue); font-size:9px; font-weight:700; letter-spacing:.1em; }
.area-state.planned { color:#7b6a4e; }
.product-area-copy h2,.product-area-copy h3 { margin:0; font-size:24px; line-height:1.2; }
.product-area-copy p { min-height:38px; margin:12px 0 20px; color:var(--muted); font-size:11px; line-height:1.6; }
.product-area-copy strong { color:var(--blue); font-size:10px; }
.planned-area { background:#fafbfc; }
.planned-area .product-area-copy strong { color:#7c8790; }
.motherboard-scene { display:grid; place-items:center; background:linear-gradient(135deg,#e6ebef,#f7f9fa); }
.motherboard-scene::before { content:""; position:absolute; width:330px; height:170px; border:1px solid #b6c3cd; border-radius:8px; background:repeating-linear-gradient(90deg,transparent 0 31px,rgba(81,111,133,.09) 32px),repeating-linear-gradient(0deg,transparent 0 31px,rgba(81,111,133,.09) 32px); transform:rotate(-4deg); }
.motherboard-board { position:relative; z-index:1; width:265px; height:135px; border:2px solid #7590a4; border-radius:6px; background:#b6c9b9; box-shadow:0 13px 25px rgba(25,45,61,.16); transform:rotate(-4deg); }
.motherboard-board::before,.motherboard-board::after { content:""; position:absolute; border:1px solid #597283; background:#dce5df; }
.motherboard-board::before { width:58px; height:50px; left:91px; top:39px; }
.motherboard-board::after { width:72px; height:13px; right:19px; top:18px; }
.motherboard-board i { position:absolute; width:25px; height:18px; border:1px solid #6d8291; background:#e9eeeb; }
.motherboard-board i:nth-child(1) { left:17px; top:20px; }.motherboard-board i:nth-child(2) { left:17px; top:49px; }.motherboard-board i:nth-child(3) { right:24px; bottom:18px; }.motherboard-board i:nth-child(4) { right:60px; bottom:18px; }
.motherboard-board span { position:absolute; z-index:2; left:108px; top:59px; font-size:8px; font-weight:700; }.motherboard-board b { position:absolute; z-index:2; right:44px; top:21px; font-size:7px; }
.area-grid { display:grid; grid-template-columns:1.35fr .65fr; gap:16px; }
.area-card { position:relative; min-height:300px; overflow:hidden; border:1px solid var(--line); background:#172631; color:#fff; }
.area-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.64; }
.area-card::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(12,28,40,.92),rgba(12,28,40,.25)); }
.area-card-content { position:relative; z-index:1; max-width:440px; padding:34px; }
.area-card h3 { margin:0; font-size:28px; line-height:1.15; }
.area-card p { margin:13px 0 25px; color:#d7e1e8; font-size:12px; line-height:1.6; }
.format-stack { display:grid; gap:16px; }
.format-card { display:grid; grid-template-columns:64px 1fr 24px; align-items:center; gap:17px; min-height:142px; padding:22px; border:1px solid var(--line); background:#fff; }
.format-card:hover { border-color:#92a8ba; background:#fafcfd; }
.format-icon { position:relative; display:grid; place-items:center; width:64px; height:64px; color:var(--blue); border:1px solid #b7c8d6; background:var(--blue-soft); font-size:11px; font-weight:700; }
.format-card h3 { margin:0; font-size:16px; }
.format-card p { margin:7px 0 0; color:var(--muted); font-size:10px; line-height:1.45; }
.format-card > b { color:var(--blue); font-size:20px; }

.family-section { border-top:1px solid var(--line); background:var(--soft); }
.family-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.family-card { overflow:hidden; border:1px solid var(--line); background:#fff; }
.family-card:hover { border-color:#8ca2b5; }
.family-visual { position:relative; height:185px; overflow:hidden; border-bottom:1px solid var(--line); background:#e9eef2; }
.family-visual img { width:100%; height:100%; object-fit:cover; }
.family-visual.diagram { display:grid; place-items:center; padding:20px; background:#eef3f6; }
.family-body { padding:22px; }
.conversion-tag { display:inline-flex; align-items:center; gap:7px; color:var(--blue); font-size:10px; font-weight:700; }
.conversion-tag span { color:#84909a; }
.family-card h3 { margin:15px 0 9px; font-size:19px; line-height:1.25; }
.family-card p { min-height:35px; margin:0; color:var(--muted); font-size:10px; line-height:1.55; }
.purpose-grid .family-card p { min-height:48px; }
.use-label { display:block; min-height:24px; color:var(--blue); font-size:9px; font-weight:700; line-height:1.35; letter-spacing:.04em; }
.technical-path { margin-top:15px; padding:9px 10px; color:#455f74; border:1px solid #d2dce4; background:#f7fafc; font-size:9px; font-weight:700; text-align:center; }
.technical-path b { padding:0 5px; color:var(--blue); }
.family-meta { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:19px; padding-top:15px; border-top:1px solid var(--line); }
.family-meta > span:first-child { color:#6d7882; font-size:9px; }

.visual-flow { display:flex; align-items:center; justify-content:center; width:100%; gap:10px; }
.visual-device { display:grid; place-items:center; width:70px; height:52px; color:#31495e; border:1px solid #8fa4b5; border-radius:7px; background:#fff; font-size:10px; font-weight:700; }
.visual-controller { position:relative; display:grid; place-items:center; width:78px; height:66px; color:#fff; border-radius:4px; background:#1c5f9d; font-size:9px; font-weight:700; }
.visual-controller::before,.visual-controller::after { content:""; position:absolute; left:-8px; right:-8px; height:4px; background:repeating-linear-gradient(90deg,#8194a4 0 4px,transparent 4px 8px); }
.visual-controller::before { top:7px; }.visual-controller::after { bottom:7px; }
.visual-wire { position:relative; width:40px; height:2px; overflow:hidden; background:#9cb0bf; }
.visual-wire::after { content:""; position:absolute; top:-2px; width:6px; height:6px; border-radius:50%; background:var(--blue); animation:signal-flow 1.8s linear infinite; }
.visual-targets { display:grid; gap:5px; }
.visual-target { min-width:68px; padding:7px 8px; border:1px solid #8fa4b5; border-radius:5px; background:#fff; font-size:9px; font-weight:700; text-align:center; }
.battery-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(13,31,44,.12),rgba(13,31,44,.02)); pointer-events:none; }
.battery-overlay { position:absolute; left:15px; top:15px; z-index:2; width:138px; padding:13px; color:#263a49; border:1px solid rgba(119,145,164,.75); background:rgba(255,255,255,.93); box-shadow:0 6px 18px rgba(15,37,53,.12); }
.battery-overlay span { display:block; color:#5e7180; font-size:7px; font-weight:700; letter-spacing:.08em; }
.battery-overlay strong { display:block; margin:5px 0 4px; color:var(--green); font-size:28px; line-height:1; }
.battery-overlay small { display:block; color:#5d6973; font-size:7px; line-height:1.4; }
.format-pair { display:grid; grid-template-columns:1fr 1fr; gap:16px; }

.info-strip { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.info-strip article { min-height:125px; padding:23px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.info-strip strong { display:block; font-size:12px; }
.info-strip p { margin:9px 0 0; color:var(--muted); font-size:10px; line-height:1.55; }
.about-section { padding:62px 0; border-top:1px solid var(--line); background:#f8f9fa; }
.about-grid { display:grid; grid-template-columns:1fr .9fr; gap:80px; }
.about-grid h2 { margin:0; font-size:31px; line-height:1.2; }
.about-grid p { margin:0 0 15px; color:var(--muted); font-size:12px; line-height:1.7; }

.page-header { padding:48px 0 35px; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 20px; color:#717d87; font-size:10px; }
.page-header h1 { margin:0; font-size:43px; letter-spacing:-.03em; }
.page-header > p:last-child { max-width:700px; margin:14px 0 0; color:var(--muted); font-size:14px; line-height:1.6; }
.catalog-toolbar { display:flex; align-items:center; justify-content:space-between; padding:13px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:#6a7680; font-size:10px; }
.catalog-area { padding:10px 0 80px; }

.area-hero { position:relative; overflow:hidden; min-height:380px; color:#fff; background:#142736; }
.area-hero img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.54; }
.area-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(10,28,41,.95),rgba(10,28,41,.27)); }
.area-hero-inner { position:relative; z-index:1; max-width:640px; padding-top:70px; padding-bottom:70px; }
.area-hero h1 { margin:0; font-size:48px; line-height:1.08; letter-spacing:-.035em; }
.area-hero p { margin:18px 0 0; color:#dce5ec; font-size:14px; line-height:1.65; }
#products { scroll-margin-top:84px; }

.family-page { padding-bottom:80px; }
.family-hero { display:grid; grid-template-columns:1fr 1fr; min-height:390px; border:1px solid var(--line); }
.family-hero-image { position:relative; min-height:360px; overflow:hidden; background:#eef2f4; }
.family-hero-image.diagram { display:grid; place-items:center; padding:35px; }
.family-hero-image img { width:100%; height:100%; object-fit:cover; }
.family-hero-image .image-note { right:12px; bottom:12px; }
.family-hero-copy { display:flex; flex-direction:column; justify-content:center; padding:44px; }
.family-hero-copy h1 { margin:0; font-size:39px; line-height:1.12; letter-spacing:-.03em; }
.family-hero-copy > p { margin:17px 0 0; color:var(--muted); font-size:13px; line-height:1.65; }
.path-large { display:flex; align-items:center; gap:9px; margin-bottom:20px; }
.path-large span { padding:7px 9px; color:#33536e; border:1px solid #b8c7d4; background:#f4f8fb; font-size:9px; font-weight:700; }
.path-large b { color:var(--blue); }
.format-section { padding:60px 0 0; }
.format-section h2 { margin:0 0 24px; font-size:29px; }
.format-compare { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.product-format { border:1px solid var(--line); background:#fff; }
.format-title { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:22px; border-bottom:1px solid var(--line); background:var(--soft); }
.format-title h3 { margin:0; font-size:18px; }
.format-product { padding:24px; }
.format-product h4 { margin:0; font-size:20px; line-height:1.25; }
.format-product > p { margin:10px 0 0; color:var(--muted); font-size:11px; line-height:1.6; }
.feature-icons { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:20px 0; }
.feature-icon { min-height:70px; padding:11px 8px; border:1px solid var(--line); text-align:center; }
.feature-icon b { display:grid; place-items:center; width:28px; height:25px; margin:0 auto 8px; color:#fff; border-radius:4px; background:var(--blue); font-size:8px; }
.feature-icon span { color:#56636e; font-size:9px; line-height:1.25; }
.format-link { display:flex; align-items:center; justify-content:space-between; padding-top:16px; border-top:1px solid var(--line); color:var(--blue); font-size:11px; font-weight:700; }
.technical-note { margin-top:16px; padding:17px 19px; border-left:3px solid var(--blue); background:#f1f6fa; }
.technical-note strong { font-size:11px; }
.technical-note p { margin:6px 0 0; color:var(--muted); font-size:10px; line-height:1.55; }
.compatibility-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:55px; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.compatibility-grid article { padding:22px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.compatibility-grid h3 { margin:0; font-size:13px; }
.compatibility-grid p { margin:8px 0 0; color:var(--muted); font-size:10px; line-height:1.55; }

.product-page { padding:32px 0 80px; }
.product-intro { display:grid; grid-template-columns:1.1fr .9fr; gap:48px; margin-top:15px; }
.gallery { display:grid; grid-template-columns:1fr 1fr; gap:11px; }
.gallery-main { grid-column:1/-1; }
.gallery-main,.gallery-small { border:1px solid var(--line); background:#f4f6f7; }
.gallery img { width:100%; height:100%; object-fit:cover; }
.gallery-main img { aspect-ratio:16/10; }.gallery-small img { aspect-ratio:4/3; }
.gallery span { display:block; padding:9px 11px; border-top:1px solid var(--line); color:#68737d; background:#fff; font-size:9px; }
.product-summary { padding-top:7px; }
.product-category { margin:0 0 18px; color:#66727c; font-size:9px; font-weight:700; letter-spacing:.08em; }
.product-summary h1 { margin:0 0 18px; font-size:38px; line-height:1.13; letter-spacing:-.025em; }
.product-lede { margin:22px 0; color:var(--muted); font-size:14px; line-height:1.65; }
.key-specs { border-top:1px solid var(--line); }
.key-specs > div { display:flex; justify-content:space-between; gap:20px; padding:14px 0; border-bottom:1px solid var(--line); }
.key-specs span { color:#747f89; font-size:9px; }.key-specs strong { font-size:11px; text-align:right; }
.availability-box { margin-top:20px; padding:17px; border-left:3px solid var(--blue); background:#f1f6fa; }
.availability-box strong { font-size:11px; }.availability-box p { margin:6px 0 0; color:var(--muted); font-size:10px; line-height:1.55; }
.detail-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; padding:62px 0; border-bottom:1px solid var(--line); }
.detail-heading h2 { margin:0; font-size:26px; line-height:1.25; }
.detail-heading p:last-child { color:var(--muted); font-size:11px; line-height:1.6; }
.detail-body > p { margin:0 0 25px; color:var(--muted); font-size:12px; line-height:1.7; }
.detail-body h3 { margin:0 0 12px; font-size:14px; }
.detail-body ul { margin:0; padding-left:19px; color:var(--muted); font-size:11px; line-height:1.85; }
.spec-table { border-top:1px solid var(--line); }
.spec-table > div { display:grid; grid-template-columns:42% 58%; padding:13px 0; border-bottom:1px solid var(--line); }
.spec-table span { color:#68747e; font-size:10px; }.spec-table strong { font-size:10px; font-weight:600; }

.contact-page { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding-bottom:70px; }
.contact-panel { padding:32px; border:1px solid var(--line); }
.contact-primary { background:var(--soft); }
.contact-panel h2 { margin:0; font-size:28px; }
.contact-panel > p:not(.section-label) { margin:15px 0 0; color:var(--muted); font-size:11px; line-height:1.65; }
.contact-actions { display:flex; align-items:center; gap:22px; margin-top:25px; }
.contact-phone { color:var(--blue); font-size:12px; font-weight:700; }
.company-details { margin:0; }
.company-details > div { display:grid; grid-template-columns:145px 1fr; gap:20px; padding:13px 0; border-bottom:1px solid var(--line); }
.company-details > div:first-child { border-top:1px solid var(--line); }
.company-details dt { color:#6b7680; font-size:10px; }.company-details dd { margin:0; font-size:11px; font-weight:600; line-height:1.45; overflow-wrap:anywhere; }

footer { color:#dce2e7; background:#1b252e; }
.footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr 1.3fr; gap:48px; padding-top:48px; padding-bottom:40px; }
.footer-brand { color:#fff; }.footer-grid p { max-width:310px; color:#9da8b2; font-size:10px; line-height:1.6; }
.footer-grid h3 { margin:0 0 14px; color:#fff; font-size:10px; }
.footer-grid > div > a { display:block; margin:0 0 9px; color:#aeb8c1; font-size:10px; }
.footer-grid > div > a:hover { color:#fff; }
.footer-bottom { display:flex; justify-content:space-between; padding-top:17px; padding-bottom:19px; border-top:1px solid #34414c; color:#89959f; font-size:9px; }

@media (max-width:900px) {
  .container { width:min(100% - 30px,1180px); }
  .header-inner nav { gap:15px; }.header-inner nav a:nth-child(3) { display:none; }
  .hero-copy-block h1 { font-size:43px; }
  .hero-shade { background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.9) 58%,rgba(255,255,255,.34)); }
  .finder { grid-template-columns:1fr; }.finder-step { border-right:0; border-bottom:1px solid var(--line); }.finder-result { grid-template-columns:1fr; }.result-path { border-right:0; border-bottom:1px solid var(--line); }
  .area-grid,.family-hero,.product-intro,.detail-section,.about-grid,.contact-page { grid-template-columns:1fr; }
  .product-area-media { height:220px; }
  .family-grid { grid-template-columns:1fr 1fr; }.family-grid .family-card:last-child { grid-column:1/-1; }
  .format-compare { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:600px) {
  .notice-bar { font-size:9px; }.header-inner { min-height:61px; }.brand { font-size:14px; }
  .header-inner nav a:not(.nav-finder) { display:none; }.nav-finder { padding:8px 11px; }
  .home-hero,.hero-inner { min-height:470px; }.hero-copy-block { padding:55px 0 95px; }.hero-copy-block h1 { font-size:37px; }.hero-copy-block > p:not(.eyebrow) { font-size:14px; }
  .hero-shade { background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.9) 68%,rgba(255,255,255,.46)); }
  .hero-photo { object-position:65% center; }
  .finder-heading,.section-head { align-items:start; flex-direction:column; }.finder-heading h2,.section-head h2 { font-size:29px; }.section-hint { max-width:none; }
  .choice-grid,.choice-grid.three { grid-template-columns:1fr 1fr; }.choice-grid.three .choice-button:last-child { grid-column:1/-1; }
  .result-options,.family-grid,.feature-icons,.info-strip,.compatibility-grid { grid-template-columns:1fr; }
  .family-grid .family-card:last-child { grid-column:auto; }
  .area-grid,.area-directory-grid,.format-pair { grid-template-columns:1fr; }.area-card { min-height:340px; }
  .product-area-media { height:210px; }.product-area-copy { padding:23px; }.product-area-copy p { min-height:0; }
  .motherboard-scene::before { width:270px; height:145px; }.motherboard-board { width:225px; height:120px; }
  .page-header h1,.area-hero h1 { font-size:36px; }.area-hero-inner { padding-top:55px; padding-bottom:55px; }
  .family-hero-copy { padding:30px 23px; }.family-hero-copy h1 { font-size:31px; }
  .format-title { align-items:flex-start; flex-direction:column; }
  .gallery { grid-template-columns:1fr; }.gallery-main { grid-column:auto; }
  .spec-table > div,.company-details > div { grid-template-columns:1fr; gap:6px; }
  .footer-grid { grid-template-columns:1fr; gap:28px; }.footer-bottom { flex-direction:column; gap:7px; }
  .contact-actions { align-items:flex-start; flex-direction:column; gap:14px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .path-line::after,.visual-wire::after { animation:none; }
}
a:focus-visible,button:focus-visible { outline:2px solid var(--blue); outline-offset:3px; }

/* Clear, area-first catalog system */
:root {
  --ink:#17212a;
  --muted:#586672;
  --line:#d8dee4;
  --soft:#f4f6f8;
  --blue:#1769c2;
  --blue-dark:#0f4e92;
  --blue-soft:#eaf3fc;
}
body { font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif; font-size:16px; line-height:1.55; }
.container { width:min(1200px,calc(100% - 56px)); }
.notice-bar { padding:7px 0; font-size:12px; }
.notice-inner { display:flex; align-items:center; justify-content:space-between; }
.header-inner { min-height:70px; }
.brand { font-size:18px; }
.header-inner nav { gap:29px; }
.header-inner nav a { font-size:14px; font-weight:540; }
.nav-finder { padding:10px 15px; }
.eyebrow,.section-label { margin-bottom:14px; font-size:12px; letter-spacing:.09em; }
.primary-button,.secondary-button { min-height:45px; padding:12px 19px; font-size:14px; }

.catalog-intro { padding:52px 0 48px; border-bottom:1px solid var(--line); background:var(--soft); }
.catalog-intro-grid { display:grid; grid-template-columns:1.12fr .88fr; align-items:end; gap:90px; }
.catalog-intro h1 { max-width:650px; margin:0; font-size:clamp(38px,3.7vw,50px); line-height:1.08; letter-spacing:-.038em; font-weight:650; }
.catalog-intro-grid > div:last-child > p { max-width:520px; margin:0; color:var(--muted); font-size:17px; line-height:1.65; }
.catalog-intro .hero-actions { margin-top:24px; }
.area-first-section { padding-top:58px; padding-bottom:64px; scroll-margin-top:92px; }
.section-space { padding-top:64px; padding-bottom:64px; }
.section-head { margin-bottom:24px; }
.section-head h2 { font-size:34px; line-height:1.2; }
.section-head > a { font-size:14px; }
.area-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.product-area-card { min-width:0; }
.product-area-media { height:245px; }
.product-area-copy { padding:27px; }
.product-area-copy h2,.product-area-copy h3 { font-size:25px; }
.product-area-copy p { min-height:48px; margin:13px 0 20px; font-size:15px; line-height:1.6; }
.product-area-copy strong { font-size:13px; }
.area-state { font-size:11px; }
.area-count { font-size:11px; }
.directory-note { margin:20px 0 0; color:#6f7c87; font-size:13px; line-height:1.55; }
.family-section { background:#f5f7f9; }
.family-body { padding:23px; }
.family-card h3 { font-size:21px; }
.family-card p { min-height:62px; font-size:14px; line-height:1.6; }
.purpose-grid .family-card p { min-height:62px; }
.use-label { min-height:29px; font-size:11px; }
.family-meta > span:first-child { font-size:11px; }
.status { font-size:11px; }
.info-strip strong { font-size:15px; }
.info-strip p { font-size:14px; }
.about-grid p { font-size:15px; }
.about-grid h2 { font-size:34px; }

/* Legible type on product and contact pages */
.finder-heading p,.area-card p,.area-hero p,.family-hero-copy > p,.product-format > p,.contact-panel > p:not(.section-label) { font-size:15px; }
.finder-heading h2 { font-size:36px; }
.step-title,.result-top p,.detail-heading p:last-child,.technical-note p,.compatibility-grid p,.availability-box p { font-size:13px; }
.choice-label,.format-card p,.feature-icon span,.detail-body ul,.key-specs span,.key-specs strong,.spec-table span,.spec-table strong,.company-details dt,.company-details dd { font-size:12px; }
.choice-sub { font-size:10px; }
.result-top h3 { font-size:22px; }
.technical-path,.breadcrumbs,.catalog-toolbar,.product-category,.gallery span { font-size:11px; }
.compatibility-grid h3,.detail-body h3 { font-size:15px; }
.detail-body > p { font-size:14px; }
.page-header > p:last-child,.product-lede { font-size:16px; }
.format-link,.contact-phone { font-size:13px; }
.footer-grid p,.footer-grid > div > a,.footer-grid h3 { font-size:12px; }
.footer-bottom { font-size:11px; }

@media (max-width:900px) {
  .container { width:min(100% - 38px,1200px); }
  .catalog-intro-grid { grid-template-columns:1fr; gap:28px; }
  .area-directory-grid { grid-template-columns:1fr; }
  .product-area-copy p { min-height:0; }
}
@media (max-width:600px) {
  .container { width:min(100% - 28px,1200px); }
  .notice-inner span:last-child { display:none; }
  .catalog-intro { padding:38px 0 40px; }
  .catalog-intro h1 { font-size:36px; }
  .catalog-intro-grid > div:last-child > p { font-size:16px; }
  .catalog-intro .hero-actions { align-items:stretch; flex-direction:column; }
  .area-first-section,.section-space { padding-top:50px; padding-bottom:50px; }
  .section-head h2 { font-size:29px; }
  .product-area-media { height:210px; }
  .product-area-copy { padding:23px; }
  .family-card p,.purpose-grid .family-card p { min-height:0; }
}

/* Helpful interaction feedback without decorative motion */
.choice-button { position:relative; }
.result-option b,.format-card > b { transition:transform .16s ease; }
.product-area-media > img,.family-visual > img { transition:transform .22s ease; }

@media (hover:hover) and (pointer:fine) {
  .choice-button[data-help]::after {
    content:attr(data-help);
    position:absolute;
    top:calc(100% + 8px);
    left:50%;
    z-index:60;
    width:210px;
    padding:9px 11px;
    color:#f5f8fa;
    border:1px solid #365268;
    background:#173247;
    box-shadow:0 7px 18px rgba(16,39,55,.18);
    font-size:11px;
    font-weight:500;
    line-height:1.45;
    text-align:left;
    opacity:0;
    pointer-events:none;
    transform:translate(-50%,-3px);
    transition:opacity .14s ease,transform .14s ease;
  }
  .choice-grid > .choice-button:first-child::after { left:0; transform:translate(0,-3px); }
  .choice-grid > .choice-button:last-child::after { right:0; left:auto; transform:translate(0,-3px); }
  .choice-button[data-help]:hover::after,.choice-button[data-help]:focus-visible::after { opacity:1; transform:translate(-50%,0); }
  .choice-grid > .choice-button:first-child:hover::after,.choice-grid > .choice-button:first-child:focus-visible::after,
  .choice-grid > .choice-button:last-child:hover::after,.choice-grid > .choice-button:last-child:focus-visible::after { transform:translate(0,0); }

  a.product-area-card,.family-card,.format-card,.result-option { transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease; }
  a.product-area-card:hover,.family-card:hover { transform:translateY(-2px); box-shadow:0 9px 24px rgba(24,50,72,.10); }
  a.product-area-card:hover .product-area-media > img,.family-card:hover .family-visual > img { transform:scale(1.018); }
  a.product-area-card:hover h3,.family-card:hover h3 { color:var(--blue); }
  .format-card:hover,.result-option:hover { border-color:#86a7c2; background:#f7fbfe; box-shadow:0 6px 16px rgba(24,50,72,.07); }
  .format-card:hover > b,.result-option:hover b { transform:translateX(3px); }
}

@media (prefers-reduced-motion:reduce) {
  .result-option b,.format-card > b,.product-area-media > img,.family-visual > img,
  a.product-area-card,.family-card,.format-card,.result-option { transition:none; }
  a.product-area-card:hover,.family-card:hover { transform:none; }
  a.product-area-card:hover .product-area-media > img,.family-card:hover .family-visual > img { transform:none; }
}

/* Controller-first XILUME homepage */
.controller-hero {
  border-bottom:1px solid var(--line);
  background:#fff;
}
.controller-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(520px,1.06fr);
  align-items:center;
  gap:70px;
  min-height:610px;
  padding-top:72px;
  padding-bottom:72px;
}
.controller-hero-copy h1 {
  max-width:650px;
  margin:0;
  color:#111c25;
  font-size:clamp(48px,4.7vw,68px);
  font-weight:650;
  letter-spacing:-.055em;
  line-height:1.01;
}
.hero-lede {
  max-width:650px;
  margin:25px 0 0;
  color:#4d5b67;
  font-size:17px;
  line-height:1.72;
}
.hero-assurance {
  display:flex;
  flex-wrap:wrap;
  gap:8px 19px;
  margin:28px 0 0;
  padding:0;
  color:#53616c;
  font-size:12px;
  list-style:none;
}
.hero-assurance li {
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.hero-assurance li::before {
  content:"";
  width:5px;
  height:5px;
  background:var(--blue);
}
.hero-system-card {
  border:1px solid #203c52;
  color:#e8eef3;
  background:#132a3c;
  box-shadow:18px 20px 0 #e8edf1;
}
.system-card-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:15px 18px;
  border-bottom:1px solid #365065;
  color:#b8c7d2;
  font-size:10px;
  letter-spacing:.11em;
}
.system-card-head b {
  color:#6fb2f1;
  font-size:9px;
}
.hero-system-flow {
  display:grid;
  grid-template-columns:105px 1fr 170px 1fr 105px;
  align-items:center;
  min-height:300px;
  padding:35px 28px;
}
.hero-signal-stack {
  display:grid;
  gap:7px;
}
.hero-signal-stack small {
  margin-bottom:3px;
  color:#7891a3;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
}
.hero-signal-stack span {
  padding:9px 8px;
  border:1px solid #496276;
  color:#d6e0e7;
  background:#1b3549;
  font-size:10px;
  font-weight:700;
  text-align:center;
}
.hero-flow-line {
  position:relative;
  height:1px;
  overflow:hidden;
  background:#527087;
}
.hero-flow-line::after {
  content:"";
  position:absolute;
  top:-2px;
  left:0;
  width:5px;
  height:5px;
  background:#4da1ef;
  animation:hero-signal 2s linear infinite;
}
@keyframes hero-signal { to { transform:translateX(80px); } }
.hero-chip {
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:150px;
  height:150px;
  margin:auto;
  border:1px solid #6f8ca2;
  background:#0f2130;
  box-shadow:inset 0 0 0 8px #172f42;
}
.hero-chip img {
  width:48px;
  height:48px;
  margin-bottom:10px;
}
.hero-chip strong {
  color:#fff;
  font-size:14px;
  letter-spacing:.13em;
}
.hero-chip small {
  margin-top:5px;
  color:#6fa9db;
  font-size:7px;
  letter-spacing:.1em;
}
.chip-pin-row,.chip-pin-column,.selector-chip-pins {
  position:absolute;
  pointer-events:none;
}
.chip-pin-row {
  left:13px;
  right:13px;
  height:7px;
  background:repeating-linear-gradient(90deg,#8da0ae 0 5px,transparent 5px 11px);
}
.chip-pin-row.top { top:-7px; }
.chip-pin-row.bottom { bottom:-7px; }
.chip-pin-column {
  top:13px;
  bottom:13px;
  width:7px;
  background:repeating-linear-gradient(180deg,#8da0ae 0 5px,transparent 5px 11px);
}
.chip-pin-column.left { left:-7px; }
.chip-pin-column.right { right:-7px; }
.system-card-foot {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid #365065;
}
.system-card-foot > div {
  display:grid;
  grid-template-columns:27px 1fr;
  align-items:center;
  gap:8px;
  min-height:64px;
  padding:12px 14px;
  border-right:1px solid #365065;
}
.system-card-foot > div:last-child { border-right:0; }
.system-card-foot small {
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
  border:1px solid #55728a;
  color:#66a9e6;
  font-size:8px;
}
.system-card-foot strong {
  font-size:9px;
  font-weight:600;
  line-height:1.35;
}

.platform-section {
  padding-top:80px;
  padding-bottom:84px;
}
.section-intro {
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  align-items:end;
  gap:70px;
  margin-bottom:30px;
}
.section-intro h2,.integration-heading h2,.build-process-grid h2 {
  margin:0;
  color:#14212b;
  font-size:38px;
  font-weight:630;
  letter-spacing:-.035em;
  line-height:1.15;
}
.section-intro > p {
  margin:0;
  color:#5a6873;
  font-size:15px;
  line-height:1.68;
}
.platform-list {
  border-top:1px solid #bfc9d1;
}
.platform-row {
  display:grid;
  grid-template-columns:58px 76px minmax(0,1fr) 175px;
  align-items:center;
  gap:22px;
  min-height:142px;
  padding:24px 22px 24px 0;
  border-bottom:1px solid #cbd3da;
  background:#fff;
}
a.platform-row:hover {
  background:#f6f9fb;
}
.platform-primary {
  border-left:4px solid var(--blue);
  padding-left:18px;
  background:#f7fbff;
}
.platform-index {
  color:#81909b;
  font-size:12px;
  font-weight:700;
}
.platform-symbol {
  position:relative;
  display:block;
  width:62px;
  height:62px;
  color:#25445d;
  border:1px solid #aab9c5;
  background:#f7fafc;
}
.chip-symbol::before {
  content:"XIC";
  position:absolute;
  inset:10px;
  display:grid;
  place-items:center;
  color:#fff;
  background:#214f73;
  font-size:9px;
  font-weight:700;
  letter-spacing:.06em;
}
.chip-symbol::after {
  content:"";
  position:absolute;
  inset:-5px;
  background:repeating-linear-gradient(90deg,transparent 0 8px,#788d9d 8px 11px,transparent 11px 15px);
  clip-path:polygon(0 0,100% 0,100% 6%,0 6%,0 94%,100% 94%,100% 100%,0 100%);
}
.module-symbol i {
  position:absolute;
  display:block;
  border:1px solid #678298;
  background:#dbe8df;
}
.module-symbol i:nth-child(1) { inset:10px; }
.module-symbol i:nth-child(2) { width:16px; height:16px; left:16px; top:18px; background:#2f668f; }
.module-symbol i:nth-child(3) { width:12px; height:7px; right:15px; bottom:17px; background:#fff; }
.board-symbol i:first-child {
  position:absolute;
  inset:10px;
  border:1px solid #8295a4;
  background:#cbd8ce;
}
.board-symbol i:last-child {
  position:absolute;
  width:21px;
  height:18px;
  left:21px;
  top:21px;
  border:1px solid #667f92;
  background:#eef2ef;
}
.platform-copy {
  display:block;
}
.platform-copy small {
  display:block;
  margin-bottom:8px;
  color:var(--blue);
  font-size:9px;
  font-weight:700;
  letter-spacing:.11em;
}
.platform-copy > strong {
  display:block;
  color:#16242e;
  font-size:23px;
  line-height:1.2;
}
.platform-copy > span {
  display:block;
  max-width:720px;
  margin-top:8px;
  color:#5a6873;
  font-size:14px;
  line-height:1.55;
}
.platform-meta {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  color:var(--blue);
}
.platform-meta b {
  font-size:12px;
}
.platform-meta i {
  font-size:20px;
  font-style:normal;
}
.platform-future {
  color:#73808a;
  background:#fafbfc;
}
.platform-future .platform-copy small,.platform-future .platform-meta { color:#7c8790; }
.platform-future .platform-copy > strong { color:#53616c; }

.controller-selector-section {
  padding:78px 0 84px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#f2f5f7;
  scroll-margin-top:74px;
}
.selector-intro {
  margin-bottom:34px;
}
.selector-shell {
  display:grid;
  grid-template-columns:220px 238px 250px minmax(310px,1fr);
  border:1px solid #bfc9d1;
  background:#fff;
  box-shadow:0 12px 35px rgba(20,42,58,.07);
}
.selector-column,.selector-chip-column {
  min-width:0;
  padding:20px;
  border-right:1px solid #cdd5db;
}
.selector-column-head {
  display:flex;
  align-items:center;
  gap:10px;
  min-height:37px;
  margin-bottom:17px;
}
.selector-column-head.centered {
  justify-content:center;
}
.selector-step {
  display:grid;
  place-items:center;
  width:27px;
  height:27px;
  flex:none;
  color:#fff;
  background:#205f94;
  font-size:10px;
  font-weight:700;
}
.selector-column-head small {
  display:block;
  color:#7a8791;
  font-size:8px;
  font-weight:700;
  letter-spacing:.1em;
}
.selector-column-head strong {
  display:block;
  margin-top:2px;
  color:#24333e;
  font-size:12px;
}
.signal-choice-list {
  display:grid;
  gap:7px;
}
.signal-choice {
  display:grid;
  grid-template-columns:45px 1fr;
  align-items:center;
  gap:10px;
  min-height:64px;
  padding:8px 10px;
  color:#334450;
  border:1px solid #d1d8de;
  background:#fff;
  cursor:pointer;
  text-align:left;
}
.signal-choice:hover {
  border-color:#7fa0ba;
  background:#f8fbfd;
}
.signal-choice[aria-pressed="true"] {
  color:#173d5d;
  border-color:#327ab3;
  background:#edf6fd;
  box-shadow:inset 3px 0 0 var(--blue);
}
.signal-code {
  display:grid;
  place-items:center;
  width:42px;
  height:32px;
  color:#2f5877;
  border:1px solid #9eb3c3;
  background:#f5f9fc;
  font-size:9px;
  font-weight:800;
  letter-spacing:.03em;
}
.signal-choice[aria-pressed="true"] .signal-code {
  color:#fff;
  border-color:#1f6095;
  background:#1f6095;
}
.signal-choice strong {
  display:block;
  font-size:10px;
  line-height:1.3;
}
.signal-choice small {
  display:block;
  margin-top:3px;
  color:#7a8791;
  font-size:8px;
}
.selector-chip-column {
  background:#f8fafb;
}
.selector-chip-stage {
  display:grid;
  grid-template-columns:1fr 132px 1fr;
  align-items:center;
  min-height:245px;
}
.selector-route {
  position:relative;
  height:2px;
  overflow:hidden;
  background:#8fa5b5;
}
.selector-route i {
  position:absolute;
  top:-2px;
  left:0;
  width:6px;
  height:6px;
  background:var(--blue);
  animation:selector-signal 1.8s linear infinite;
}
.route-out i { animation-delay:.8s; }
@keyframes selector-signal { to { transform:translateX(65px); } }
.selector-chip-body {
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:132px;
  height:132px;
  color:#fff;
  background:#183a55;
  box-shadow:inset 0 0 0 7px #214c6d;
}
.selector-chip-body img {
  width:39px;
  height:39px;
  margin-bottom:9px;
}
.selector-chip-body > strong {
  max-width:108px;
  overflow:hidden;
  font-size:10px;
  letter-spacing:.04em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.selector-chip-body > small {
  margin-top:5px;
  color:#92bfdf;
  font-size:6px;
  letter-spacing:.08em;
}
.selector-chip-pins.top,.selector-chip-pins.bottom {
  left:13px;
  right:13px;
  height:6px;
  background:repeating-linear-gradient(90deg,#8599a8 0 5px,transparent 5px 10px);
}
.selector-chip-pins.top { top:-6px; }
.selector-chip-pins.bottom { bottom:-6px; }
.selector-chip-pins.left,.selector-chip-pins.right {
  top:13px;
  bottom:13px;
  width:6px;
  background:repeating-linear-gradient(180deg,#8599a8 0 5px,transparent 5px 10px);
}
.selector-chip-pins.left { left:-6px; }
.selector-chip-pins.right { right:-6px; }
.selector-chip-note {
  margin:8px 0 0;
  color:#6d7a84;
  font-size:9px;
  line-height:1.5;
  text-align:center;
}
.selector-match {
  padding:22px 24px;
  background:#fff;
}
.match-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-bottom:14px;
  border-bottom:1px solid #d7dde2;
}
.match-head span {
  color:#196349;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
}
.match-head small {
  color:#677580;
  font-size:9px;
  font-weight:700;
}
.match-title {
  padding:20px 0 16px;
}
.match-title small {
  color:#78858e;
  font-size:8px;
  font-weight:700;
  letter-spacing:.08em;
}
.match-title h3 {
  margin:5px 0 8px;
  color:#123c5d;
  font-size:27px;
  letter-spacing:-.02em;
}
.match-title p {
  min-height:42px;
  margin:0;
  color:#596772;
  font-size:11px;
  line-height:1.55;
}
.match-specs {
  display:grid;
  grid-template-columns:1fr 1fr;
  margin:0;
  border-top:1px solid #d7dde2;
  border-left:1px solid #d7dde2;
}
.match-specs div {
  min-height:57px;
  padding:10px 11px;
  border-right:1px solid #d7dde2;
  border-bottom:1px solid #d7dde2;
}
.match-specs dt {
  color:#7c8891;
  font-size:8px;
}
.match-specs dd {
  margin:5px 0 0;
  color:#253641;
  font-size:10px;
  font-weight:700;
}
.match-actions {
  display:grid;
  gap:10px;
  margin-top:17px;
}
.match-actions .primary-button {
  width:100%;
  min-height:39px;
  font-size:11px;
}
.text-link {
  color:var(--blue);
  font-size:10px;
  font-weight:700;
}
.engineering-note {
  margin:16px 0 0;
  color:#7c8790;
  font-size:8px;
  line-height:1.45;
}
.selector-shell[data-match-state="roadmap"] .match-head span {
  color:#96651f;
}
.selector-shell[data-match-state="roadmap"] .match-title h3 {
  color:#6f5a39;
  font-size:20px;
}
.selector-shell[data-match-state="roadmap"] .selector-chip-body {
  background:#5f6d77;
  box-shadow:inset 0 0 0 7px #73818a;
}

.integration-section {
  padding-top:84px;
  padding-bottom:84px;
}
.integration-heading {
  max-width:780px;
  margin-bottom:34px;
}
.integration-heading > p:last-child {
  margin:17px 0 0;
  color:#5a6873;
  font-size:15px;
  line-height:1.7;
}
.document-package-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid #c6d0d8;
  border-left:1px solid #c6d0d8;
}
.document-package-grid article {
  min-height:180px;
  padding:24px;
  border-right:1px solid #c6d0d8;
  border-bottom:1px solid #c6d0d8;
  background:#fff;
}
.document-package-grid article > span {
  display:block;
  margin-bottom:26px;
  color:var(--blue);
  font-size:10px;
  font-weight:800;
}
.document-package-grid strong {
  display:block;
  color:#1c2a34;
  font-size:16px;
}
.document-package-grid p {
  margin:10px 0 0;
  color:#62707b;
  font-size:12px;
  line-height:1.6;
}
.integration-cta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  margin-top:22px;
  padding:22px 24px;
  color:#dce7ef;
  background:#17344b;
}
.integration-cta strong,.integration-cta span {
  display:block;
}
.integration-cta strong {
  color:#fff;
  font-size:15px;
}
.integration-cta span {
  margin-top:6px;
  font-size:11px;
}
.integration-cta .secondary-button {
  flex:none;
}

.module-catalog-section {
  padding:78px 0 82px;
  border-top:1px solid var(--line);
  background:#f4f6f8;
  scroll-margin-top:72px;
}
.module-table {
  border-top:1px solid #bac6cf;
}
.module-table > a {
  display:grid;
  grid-template-columns:minmax(260px,1.35fr) minmax(120px,.65fr) minmax(190px,1fr) 100px 20px;
  align-items:center;
  gap:24px;
  min-height:105px;
  padding:19px 14px;
  border-bottom:1px solid #c9d2d9;
  background:#fff;
}
.module-table > a:hover {
  background:#f9fcfe;
  box-shadow:inset 4px 0 0 var(--blue);
}
.module-table span small {
  display:block;
  margin-bottom:5px;
  color:#7a8791;
  font-size:8px;
  font-weight:700;
  letter-spacing:.07em;
}
.module-table span strong {
  display:block;
  color:#263640;
  font-size:12px;
}
.module-table .module-name strong {
  color:#17364f;
  font-size:17px;
}
.module-status {
  padding:7px 9px;
  color:#3c5b72;
  border:1px solid #b5c8d6;
  background:#f4f9fc;
  font-size:9px;
  font-weight:700;
  text-align:center;
}
.module-table > a > b {
  color:var(--blue);
  font-size:18px;
}

.build-process-section {
  padding:82px 0;
  color:#e2e9ee;
  background:#182630;
}
.build-process-grid {
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:90px;
}
.build-process-grid h2 {
  color:#fff;
}
.build-process-grid ol {
  margin:0;
  padding:0;
  list-style:none;
  border-top:1px solid #40505c;
}
.build-process-grid li {
  display:grid;
  grid-template-columns:42px 1fr;
  gap:17px;
  padding:20px 0;
  border-bottom:1px solid #40505c;
}
.build-process-grid li > span {
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  color:#83bff1;
  border:1px solid #597186;
  font-size:10px;
  font-weight:700;
}
.build-process-grid li strong {
  color:#fff;
  font-size:14px;
}
.build-process-grid li p {
  margin:6px 0 0;
  color:#aebbc4;
  font-size:12px;
  line-height:1.55;
}

@media (max-width:1120px) {
  .controller-hero-grid {
    grid-template-columns:1fr;
    gap:50px;
  }
  .controller-hero-copy {
    max-width:780px;
  }
  .hero-system-card {
    width:min(100%,760px);
  }
  .selector-shell {
    grid-template-columns:1fr 1fr 1fr;
  }
  .selector-match {
    grid-column:1/-1;
    border-top:1px solid #cdd5db;
  }
  .match-specs {
    grid-template-columns:repeat(3,1fr);
  }
  .match-actions {
    grid-template-columns:230px 1fr;
    align-items:center;
  }
}

@media (max-width:820px) {
  .controller-hero-grid {
    min-height:0;
    padding-top:55px;
    padding-bottom:62px;
  }
  .controller-hero-copy h1 {
    font-size:48px;
  }
  .hero-system-flow {
    grid-template-columns:82px 1fr 140px 1fr 82px;
    padding-right:20px;
    padding-left:20px;
  }
  .hero-chip {
    width:125px;
    height:125px;
  }
  .section-intro,.build-process-grid {
    grid-template-columns:1fr;
    gap:18px;
  }
  .platform-row {
    grid-template-columns:42px 64px 1fr;
  }
  .platform-meta {
    grid-column:3;
    justify-content:flex-start;
  }
  .selector-shell {
    grid-template-columns:1fr 1fr;
  }
  .selector-chip-column {
    border-right:0;
  }
  .selector-shell > .signal-choice-column:nth-of-type(3) {
    border-top:1px solid #cdd5db;
  }
  .selector-match {
    grid-column:2;
    grid-row:2;
  }
  .match-specs {
    grid-template-columns:1fr 1fr;
  }
  .match-actions {
    grid-template-columns:1fr;
  }
  .document-package-grid {
    grid-template-columns:repeat(2,1fr);
  }
  .module-table > a {
    grid-template-columns:1fr 1fr 95px 20px;
  }
  .module-table .module-name {
    grid-column:1/-1;
  }
  .module-table > a > span:nth-child(4) {
    grid-column:3;
    grid-row:2;
  }
  .module-table > a > b {
    grid-column:4;
    grid-row:2;
  }
}

@media (max-width:600px) {
  .controller-hero-copy h1 {
    font-size:40px;
  }
  .hero-lede {
    font-size:15px;
  }
  .controller-hero .hero-actions {
    align-items:stretch;
    flex-direction:column;
  }
  .hero-assurance {
    display:grid;
  }
  .hero-system-card {
    box-shadow:9px 10px 0 #e8edf1;
  }
  .hero-system-flow {
    grid-template-columns:1fr;
    gap:20px;
    padding:26px;
  }
  .hero-signal-stack {
    grid-template-columns:repeat(3,1fr);
  }
  .hero-signal-stack small {
    grid-column:1/-1;
  }
  .hero-flow-line {
    width:1px;
    height:24px;
    margin:auto;
  }
  .hero-flow-line::after {
    top:0;
    left:-2px;
    animation:none;
  }
  .hero-chip {
    width:138px;
    height:138px;
  }
  .system-card-foot {
    grid-template-columns:1fr;
  }
  .system-card-foot > div {
    border-right:0;
    border-bottom:1px solid #365065;
  }
  .system-card-foot > div:last-child {
    border-bottom:0;
  }
  .platform-section,.integration-section {
    padding-top:58px;
    padding-bottom:60px;
  }
  .section-intro h2,.integration-heading h2,.build-process-grid h2 {
    font-size:31px;
  }
  .platform-row {
    grid-template-columns:38px 58px 1fr;
    gap:14px;
    padding-right:5px;
  }
  .platform-symbol {
    width:54px;
    height:54px;
  }
  .platform-copy > strong {
    font-size:19px;
  }
  .platform-copy > span {
    font-size:12px;
  }
  .controller-selector-section {
    padding-top:56px;
    padding-bottom:60px;
  }
  .selector-shell {
    grid-template-columns:1fr;
  }
  .selector-column,.selector-chip-column {
    border-right:0;
    border-bottom:1px solid #cdd5db;
  }
  .selector-shell > .signal-choice-column:nth-of-type(3) {
    border-top:0;
  }
  .selector-match {
    grid-column:auto;
    grid-row:auto;
    border-top:0;
  }
  .signal-choice-list {
    grid-template-columns:1fr 1fr;
  }
  .signal-choice {
    grid-template-columns:38px 1fr;
    min-height:70px;
    padding:8px;
  }
  .signal-code {
    width:36px;
  }
  .document-package-grid {
    grid-template-columns:1fr;
  }
  .document-package-grid article {
    min-height:0;
  }
  .integration-cta {
    align-items:stretch;
    flex-direction:column;
  }
  .module-catalog-section {
    padding-top:56px;
    padding-bottom:60px;
  }
  .module-table > a {
    grid-template-columns:1fr 32px;
    gap:13px;
  }
  .module-table .module-name {
    grid-column:1/-1;
  }
  .module-table > a > span:nth-child(2),.module-table > a > span:nth-child(3) {
    grid-column:1;
  }
  .module-table > a > span:nth-child(4) {
    grid-column:1;
    grid-row:auto;
    justify-self:start;
  }
  .module-table > a > b {
    grid-column:2;
    grid-row:2/5;
  }
  .build-process-section {
    padding:58px 0;
  }
}

@media (prefers-reduced-motion:reduce) {
  .hero-flow-line::after,.selector-route i { animation:none; }
}

/* Interface controller family page */
.controller-family-hero {
  border-bottom:1px solid var(--line);
  background:#f3f6f8;
}
.controller-family-hero-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:85px;
  min-height:520px;
  padding-top:58px;
  padding-bottom:65px;
}
.controller-family-hero h1 {
  max-width:690px;
  margin:0;
  color:#14212b;
  font-size:50px;
  font-weight:640;
  letter-spacing:-.045em;
  line-height:1.08;
}
.controller-family-hero-grid > div:first-child > p:not(.breadcrumbs):not(.section-label) {
  max-width:660px;
  margin:19px 0 0;
  color:#55636e;
  font-size:16px;
  line-height:1.7;
}
.family-chip-figure {
  display:grid;
  grid-template-columns:115px 1fr 178px 1fr 115px;
  align-items:center;
  min-height:310px;
  padding:35px;
  border:1px solid #29475d;
  color:#e6edf2;
  background:#142b3d;
}
.family-chip-inputs,.family-chip-outputs {
  display:grid;
  gap:7px;
}
.family-chip-inputs small,.family-chip-outputs small {
  margin-bottom:4px;
  color:#7894a8;
  font-size:8px;
  font-weight:700;
  letter-spacing:.1em;
}
.family-chip-inputs span,.family-chip-outputs span {
  padding:7px 5px;
  border:1px solid #466277;
  background:#1d374a;
  font-size:8px;
  font-weight:700;
  text-align:center;
}
.family-chip-line {
  height:1px;
  background:#617c90;
}
.family-chip-body {
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:150px;
  height:150px;
  margin:auto;
  background:#0f2130;
  box-shadow:inset 0 0 0 8px #1d405a;
}
.family-chip-body img {
  width:48px;
  height:48px;
  margin-bottom:9px;
}
.family-chip-body > strong {
  color:#fff;
  font-size:13px;
  letter-spacing:.11em;
}
.family-chip-body > small {
  margin-top:5px;
  color:#7eb2da;
  font-size:6px;
  letter-spacing:.09em;
}
.controller-principles {
  padding-top:78px;
  padding-bottom:82px;
}
.principle-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #c5cfd7;
  border-left:1px solid #c5cfd7;
}
.principle-grid article {
  min-height:220px;
  padding:24px;
  border-right:1px solid #c5cfd7;
  border-bottom:1px solid #c5cfd7;
}
.principle-grid article > span {
  display:inline-block;
  padding:5px 7px;
  color:#2c5d82;
  border:1px solid #a7bfd1;
  background:#f2f8fc;
  font-size:8px;
  font-weight:800;
  letter-spacing:.08em;
}
.principle-grid h3 {
  margin:30px 0 0;
  color:#1b2a34;
  font-size:17px;
}
.principle-grid p {
  margin:10px 0 0;
  color:#60707b;
  font-size:12px;
  line-height:1.65;
}
.controller-model-section {
  padding:76px 0 82px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#f3f6f8;
  scroll-margin-top:76px;
}
.controller-model-table {
  border:1px solid #bbc7d0;
  background:#fff;
}
.controller-model-head,.controller-model-table article {
  display:grid;
  grid-template-columns:1.05fr .9fr 1.55fr .8fr .8fr .85fr;
  align-items:center;
  gap:15px;
  padding:15px 18px;
}
.controller-model-head {
  color:#d8e4ec;
  background:#17364d;
  font-size:8px;
  font-weight:800;
  letter-spacing:.07em;
}
.controller-model-table article {
  min-height:72px;
  border-bottom:1px solid #d5dce1;
  color:#40505b;
  font-size:11px;
}
.controller-model-table article:last-child { border-bottom:0; }
.controller-model-table article:target {
  background:#edf6fd;
  box-shadow:inset 4px 0 0 var(--blue);
}
.controller-model-table article strong {
  color:#17456a;
  font-size:13px;
}
.controller-model-table article b {
  justify-self:start;
  padding:6px 8px;
  color:#3b5c73;
  border:1px solid #b9cad6;
  background:#f3f8fb;
  font-size:9px;
}
.model-disclaimer {
  margin:13px 0 0;
  color:#72808a;
  font-size:10px;
}
.controller-file-section {
  padding-top:82px;
  padding-bottom:84px;
}
.file-register {
  border-top:1px solid #c4ced6;
}
.file-register > div {
  display:grid;
  grid-template-columns:48px 190px 1fr 80px;
  align-items:center;
  gap:20px;
  min-height:90px;
  padding:15px 12px;
  border-bottom:1px solid #cbd3da;
}
.file-register > div > span {
  color:var(--blue);
  font-size:10px;
  font-weight:800;
}
.file-register strong {
  color:#1c2b35;
  font-size:14px;
}
.file-register p {
  margin:0;
  color:#5f6e79;
  font-size:12px;
  line-height:1.55;
}
.file-register b {
  justify-self:end;
  color:#496274;
  font-size:9px;
}
.controller-roadmap-section {
  padding:76px 0;
  color:#dce6ed;
  background:#182a37;
  scroll-margin-top:75px;
}
.controller-roadmap-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:85px;
}
.controller-roadmap-grid h2 {
  max-width:600px;
  margin:0;
  color:#fff;
  font-size:36px;
  font-weight:620;
  letter-spacing:-.03em;
  line-height:1.18;
}
.controller-roadmap-grid > div:first-child > p:last-child {
  margin:17px 0 0;
  color:#aebdc7;
  font-size:14px;
  line-height:1.68;
}
.roadmap-list {
  border-top:1px solid #475b69;
}
.roadmap-list > div {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  min-height:62px;
  border-bottom:1px solid #475b69;
}
.roadmap-list strong {
  color:#e9eff3;
  font-size:12px;
}
.roadmap-list span {
  padding:5px 7px;
  color:#a6b5c0;
  border:1px solid #5c707e;
  font-size:8px;
  font-weight:700;
}

@media (max-width:1000px) {
  .controller-family-hero-grid {
    grid-template-columns:1fr;
    gap:45px;
  }
  .family-chip-figure {
    width:min(100%,720px);
  }
  .principle-grid {
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width:760px) {
  .controller-family-hero h1 {
    font-size:40px;
  }
  .family-chip-figure {
    grid-template-columns:80px 1fr 130px 1fr 80px;
    padding:24px 18px;
  }
  .family-chip-body {
    width:120px;
    height:120px;
  }
  .controller-model-head {
    display:none;
  }
  .controller-model-table article {
    grid-template-columns:1fr 1fr;
    gap:8px 20px;
    padding:19px;
  }
  .controller-model-table article strong {
    grid-column:1/-1;
    font-size:16px;
  }
  .controller-roadmap-grid {
    grid-template-columns:1fr;
    gap:38px;
  }
}

@media (max-width:600px) {
  .controller-family-hero-grid {
    padding-top:38px;
    padding-bottom:50px;
  }
  .controller-family-hero h1 {
    font-size:34px;
  }
  .controller-family-hero .hero-actions {
    align-items:stretch;
    flex-direction:column;
  }
  .family-chip-figure {
    grid-template-columns:1fr;
    gap:18px;
  }
  .family-chip-inputs,.family-chip-outputs {
    grid-template-columns:repeat(4,1fr);
  }
  .family-chip-inputs small,.family-chip-outputs small {
    grid-column:1/-1;
  }
  .family-chip-line {
    width:1px;
    height:20px;
    margin:auto;
  }
  .family-chip-body {
    width:132px;
    height:132px;
  }
  .controller-principles,.controller-file-section {
    padding-top:58px;
    padding-bottom:60px;
  }
  .principle-grid {
    grid-template-columns:1fr;
  }
  .principle-grid article {
    min-height:0;
  }
  .controller-model-section,.controller-roadmap-section {
    padding-top:56px;
    padding-bottom:60px;
  }
  .controller-model-table article {
    grid-template-columns:1fr;
  }
  .controller-model-table article strong {
    grid-column:auto;
  }
  .file-register > div {
    grid-template-columns:32px 1fr 58px;
    gap:12px;
  }
  .file-register p {
    grid-column:2/-1;
  }
}

/* Product platform directory */
.product-directory-hero {
  padding:60px 0 54px;
  border-bottom:1px solid var(--line);
  background:#f3f6f8;
}
.product-directory-hero h1 {
  max-width:820px;
  margin:0;
  color:#14212b;
  font-size:48px;
  font-weight:640;
  letter-spacing:-.04em;
  line-height:1.1;
}
.product-directory-hero > .container > p:last-child {
  max-width:760px;
  margin:17px 0 0;
  color:#596772;
  font-size:16px;
  line-height:1.65;
}
.product-platform-directory {
  padding-top:64px;
  padding-bottom:72px;
}
.catalog-choice-section {
  padding:70px 0 76px;
  border-top:1px solid var(--line);
  background:#f3f6f8;
}
.catalog-choice-grid {
  display:grid;
  grid-template-columns:.85fr 1fr 1fr;
  gap:18px;
}
.catalog-choice-grid > div {
  padding:24px 35px 24px 0;
}
.catalog-choice-grid h2 {
  margin:0;
  color:#17252f;
  font-size:32px;
  font-weight:630;
  letter-spacing:-.03em;
  line-height:1.2;
}
.catalog-choice-grid > a {
  display:flex;
  flex-direction:column;
  min-height:270px;
  padding:26px;
  border:1px solid #bdc9d2;
  background:#fff;
}
.catalog-choice-grid > a:hover {
  border-color:#6e96b5;
  box-shadow:inset 4px 0 0 var(--blue);
}
.catalog-choice-grid > a > span {
  color:var(--blue);
  font-size:9px;
  font-weight:800;
  letter-spacing:.1em;
}
.catalog-choice-grid > a > strong {
  margin-top:35px;
  color:#1b2a34;
  font-size:21px;
  line-height:1.25;
}
.catalog-choice-grid > a > p {
  margin:12px 0 24px;
  color:#5d6b76;
  font-size:13px;
  line-height:1.6;
}
.catalog-choice-grid > a > b {
  margin-top:auto;
  color:var(--blue);
  font-size:12px;
}

@media (max-width:850px) {
  .catalog-choice-grid {
    grid-template-columns:1fr 1fr;
  }
  .catalog-choice-grid > div {
    grid-column:1/-1;
  }
}

@media (max-width:600px) {
  .product-directory-hero {
    padding-top:42px;
    padding-bottom:44px;
  }
  .product-directory-hero h1 {
    font-size:36px;
  }
  .product-platform-directory {
    padding-top:45px;
    padding-bottom:52px;
  }
  .catalog-choice-section {
    padding-top:48px;
    padding-bottom:54px;
  }
  .catalog-choice-grid {
    grid-template-columns:1fr;
  }
  .catalog-choice-grid > div {
    grid-column:auto;
    padding-right:0;
  }
}

/* Corporate homepage and visual product catalog */
.wide-container {
  width:min(1460px,calc(100% - 56px));
  margin:0 auto;
}
.corporate-header .header-inner nav {
  gap:23px;
}
.notice-inner a {
  color:#dbe9f3;
}
.corporate-hero {
  position:relative;
  min-height:610px;
  overflow:hidden;
  color:#fff;
  background:#10283a;
}
.corporate-hero-image {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.corporate-hero-overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(8,24,36,.98) 0%,rgba(8,24,36,.88) 37%,rgba(8,24,36,.38) 68%,rgba(8,24,36,.08) 100%);
}
.corporate-hero-inner {
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  min-height:610px;
}
.corporate-hero-copy {
  max-width:680px;
  padding:86px 0 94px;
}
.corporate-hero-copy .eyebrow {
  color:#7ab8e6;
}
.corporate-hero-copy h1 {
  margin:0;
  font-size:clamp(50px,5vw,70px);
  font-weight:620;
  letter-spacing:-.052em;
  line-height:1.03;
}
.corporate-hero-copy > p:not(.eyebrow) {
  max-width:620px;
  margin:25px 0 0;
  color:#d2dde5;
  font-size:19px;
  line-height:1.68;
}
.secondary-on-dark {
  color:#fff;
  border-color:#8ea9bb;
  background:rgba(13,40,58,.38);
}
.secondary-on-dark:hover {
  color:#17364d;
  background:#fff;
}
.corporate-hero-caption {
  position:absolute;
  right:0;
  bottom:28px;
  display:flex;
  gap:8px;
}
.corporate-hero-caption span {
  padding:8px 10px;
  color:#d2e1ea;
  border:1px solid rgba(179,204,219,.38);
  background:rgba(10,32,47,.62);
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
}
.corporate-products,.application-section,.engineering-section {
  padding-top:92px;
  padding-bottom:96px;
}
.corporate-section-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:60px;
  margin-bottom:34px;
}
.corporate-section-head.compact {
  margin-bottom:28px;
}
.corporate-section-head h2 {
  max-width:760px;
  margin:0;
  color:#15232d;
  font-size:42px;
  font-weight:630;
  letter-spacing:-.038em;
  line-height:1.14;
}
.catalog-button {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
  min-width:230px;
  min-height:53px;
  padding:13px 18px;
  color:#fff;
  background:#1769c2;
  font-size:14px;
  font-weight:700;
}
.catalog-button:hover {
  background:#0f4e92;
}
.catalog-button b {
  font-size:20px;
}
.visual-platform-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.visual-platform-card {
  display:flex;
  min-width:0;
  flex-direction:column;
  border:1px solid #c9d2d9;
  background:#fff;
}
.visual-platform-primary {
  border-top:4px solid var(--blue);
}
.visual-platform-media {
  position:relative;
  display:block;
  height:250px;
  overflow:hidden;
  border-bottom:1px solid #c9d2d9;
  background:#e9eef2;
}
.visual-platform-media img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .22s ease;
}
.visual-platform-card:hover .visual-platform-media img {
  transform:scale(1.015);
}
.media-state {
  position:absolute;
  left:16px;
  bottom:15px;
  padding:7px 9px;
  color:#fff;
  background:#164f7c;
  font-size:9px;
  font-weight:800;
  letter-spacing:.07em;
}
.media-state.planned {
  color:#5f6c75;
  border:1px solid #b8c3ca;
  background:rgba(255,255,255,.92);
}
.visual-platform-copy {
  display:flex;
  min-height:310px;
  padding:29px;
  flex-direction:column;
}
.visual-platform-copy > small {
  color:#1769c2;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
}
.visual-platform-copy h3 {
  margin:18px 0 0;
  color:#182731;
  font-size:27px;
  line-height:1.18;
}
.visual-platform-copy p {
  margin:14px 0 24px;
  color:#5b6873;
  font-size:15px;
  line-height:1.65;
}
.visual-platform-copy > div {
  display:flex;
  flex-wrap:wrap;
  gap:10px 20px;
  margin-top:auto;
}
.visual-platform-copy a {
  color:var(--blue);
  font-size:13px;
  font-weight:700;
}
.visual-platform-copy a + a {
  color:#5f6c75;
  font-weight:600;
}
.visual-platform-copy > div > span {
  color:#7a858d;
  font-size:13px;
  font-weight:700;
}
.visual-platform-future {
  background:#fafbfc;
}
.visual-platform-future .visual-platform-copy > small {
  color:#78838a;
}
.featured-product-section {
  padding:88px 0 94px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#f3f6f8;
}
.text-link-large {
  color:var(--blue);
  font-size:14px;
  font-weight:700;
}
.featured-product-grid {
  display:grid;
  grid-template-columns:1.45fr .8fr;
  gap:20px;
}
.featured-product-main,.featured-product-secondary {
  display:grid;
  min-width:0;
  overflow:hidden;
  border:1px solid #c4ced6;
  background:#fff;
}
.featured-product-main {
  grid-template-columns:1.18fr .82fr;
  min-height:410px;
}
.featured-product-secondary {
  grid-template-rows:225px 1fr;
}
.featured-product-image {
  overflow:hidden;
  background:#e5ebef;
}
.featured-product-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .22s ease;
}
.featured-product-main:hover img,.featured-product-secondary:hover img {
  transform:scale(1.015);
}
.featured-product-copy {
  display:flex;
  padding:32px;
  flex-direction:column;
  justify-content:center;
}
.featured-product-copy > span {
  color:var(--blue);
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
}
.featured-product-copy h3 {
  margin:19px 0 0;
  color:#182731;
  font-size:29px;
  line-height:1.18;
}
.featured-product-secondary .featured-product-copy h3 {
  font-size:23px;
}
.featured-product-copy p {
  margin:14px 0 25px;
  color:#5d6b75;
  font-size:14px;
  line-height:1.65;
}
.featured-product-copy b {
  margin-top:auto;
  color:var(--blue);
  font-size:13px;
}
.section-support-copy {
  max-width:440px;
  margin:0;
  color:#60707b;
  font-size:15px;
  line-height:1.65;
}
.application-visual-grid {
  display:grid;
  grid-template-columns:1.35fr 1fr;
  gap:20px;
}
.application-visual-card {
  position:relative;
  min-height:350px;
  overflow:hidden;
  color:#fff;
  background:#183144;
}
.application-wide {
  grid-row:span 2;
  min-height:720px;
}
.application-visual-card img {
  width:100%;
  height:100%;
  object-fit:cover;
}
.application-visual-card::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(13,31,44,.02) 35%,rgba(13,31,44,.9) 100%);
}
.application-visual-card > div {
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  z-index:1;
  padding:30px;
}
.application-visual-card small {
  color:#9bc7e5;
  font-size:10px;
  font-weight:800;
  letter-spacing:.09em;
}
.application-visual-card h3 {
  max-width:620px;
  margin:12px 0 0;
  color:#fff;
  font-size:28px;
  line-height:1.2;
}
.application-visual-card p {
  max-width:660px;
  margin:11px 0 0;
  color:#d7e1e8;
  font-size:14px;
  line-height:1.58;
}
.selector-promo-section {
  padding:84px 0;
  color:#dce7ee;
  background:#142b3c;
}
.selector-promo-grid {
  display:grid;
  grid-template-columns:1.2fr .8fr;
  align-items:center;
  gap:90px;
}
.selector-promo-visual {
  display:grid;
  grid-template-columns:130px 1fr 170px 1fr 130px;
  align-items:center;
  min-height:330px;
  padding:42px;
  border:1px solid #3c5668;
  background:#102536;
}
.promo-signal-list {
  display:grid;
  gap:10px;
}
.promo-signal-list span {
  padding:10px 8px;
  color:#d8e4eb;
  border:1px solid #4b6576;
  background:#183247;
  font-size:10px;
  font-weight:700;
  text-align:center;
}
.selector-promo-visual > i {
  height:2px;
  background:#648195;
}
.promo-chip {
  display:flex;
  width:170px;
  height:170px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:#0b1c29;
  box-shadow:inset 0 0 0 8px #1c455f;
}
.promo-chip img {
  width:52px;
  height:52px;
  margin-bottom:14px;
}
.promo-chip strong {
  color:#fff;
  font-size:13px;
  letter-spacing:.12em;
}
.selector-promo-copy h2 {
  margin:0;
  color:#fff;
  font-size:38px;
  font-weight:620;
  letter-spacing:-.035em;
  line-height:1.17;
}
.selector-promo-copy > p:not(.section-label) {
  margin:19px 0 28px;
  color:#afbdc7;
  font-size:15px;
  line-height:1.7;
}
.engineering-section {
  display:grid;
  grid-template-columns:1.08fr .92fr;
  align-items:center;
  gap:80px;
}
.engineering-image {
  min-height:440px;
  overflow:hidden;
  border:1px solid #c4ced5;
  background:#edf1f3;
}
.engineering-image img {
  width:100%;
  height:100%;
  min-height:440px;
  object-fit:cover;
}
.engineering-copy h2 {
  margin:0;
  color:#16252f;
  font-size:42px;
  font-weight:630;
  letter-spacing:-.04em;
  line-height:1.14;
}
.engineering-copy > p:not(.section-label) {
  margin:17px 0 0;
  color:#5d6b76;
  font-size:16px;
  line-height:1.7;
}
.engineering-links {
  display:flex;
  gap:24px;
  margin-top:28px;
}
.engineering-links a {
  color:var(--blue);
  font-size:13px;
  font-weight:700;
}
.support-strip {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-bottom:90px;
  border-top:1px solid #c6d0d7;
  border-left:1px solid #c6d0d7;
}
.support-strip a {
  position:relative;
  min-height:150px;
  padding:24px;
  border-right:1px solid #c6d0d7;
  border-bottom:1px solid #c6d0d7;
}
.support-strip a:hover {
  background:#f4f8fb;
}
.support-strip small,.support-strip strong {
  display:block;
}
.support-strip small {
  color:#72808a;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
}
.support-strip strong {
  margin-top:30px;
  color:#1b2a34;
  font-size:17px;
}
.support-strip span {
  position:absolute;
  right:22px;
  bottom:20px;
  color:var(--blue);
  font-size:19px;
}

/* All-products directory */
.all-products-hero {
  padding:66px 0 68px;
  border-bottom:1px solid var(--line);
  background:#f3f6f8;
}
.all-products-hero-grid {
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  align-items:center;
  gap:76px;
}
.all-products-hero h1 {
  margin:0;
  color:#14222c;
  font-size:60px;
  font-weight:620;
  letter-spacing:-.05em;
  line-height:1.04;
}
.all-products-hero-grid > div:first-child > p:not(.breadcrumbs):not(.section-label) {
  margin:21px 0 0;
  color:#596873;
  font-size:17px;
  line-height:1.7;
}
.all-products-hero-visual {
  position:relative;
  min-height:330px;
  overflow:hidden;
  border:1px solid #bfcbd3;
  background:#e8edf0;
}
.all-products-hero-visual img {
  width:100%;
  height:100%;
  min-height:330px;
  object-fit:cover;
}
.all-products-hero-visual > div {
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  background:rgba(16,42,60,.9);
}
.all-products-hero-visual strong {
  padding:14px 10px;
  color:#e4edf3;
  border-right:1px solid #496374;
  font-size:9px;
  letter-spacing:.07em;
  text-align:center;
}
.product-form-navigation {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  padding-top:52px;
  padding-bottom:58px;
}
.product-form-navigation > a {
  display:grid;
  grid-template-columns:30px 72px 1fr 20px;
  align-items:center;
  gap:15px;
  min-height:112px;
  padding:16px;
  border:1px solid #c5cfd6;
  background:#fff;
}
.product-form-navigation > a:hover {
  border-color:#7295af;
  box-shadow:inset 4px 0 0 var(--blue);
}
.product-form-navigation > a > span {
  color:var(--blue);
  font-size:10px;
  font-weight:800;
}
.product-form-navigation img {
  width:72px;
  height:72px;
  object-fit:cover;
}
.product-form-navigation small,.product-form-navigation strong {
  display:block;
}
.product-form-navigation small {
  color:#73808a;
  font-size:8px;
  font-weight:800;
  letter-spacing:.07em;
}
.product-form-navigation strong {
  margin-top:5px;
  color:#1d2c36;
  font-size:15px;
}
.product-form-navigation b {
  color:var(--blue);
  font-size:18px;
}
.product-catalog-section {
  padding:82px 0 96px;
  border-top:1px solid var(--line);
  background:#f5f7f8;
  scroll-margin-top:72px;
}
.catalog-title-row {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:50px;
  margin-bottom:58px;
}
.catalog-title-row h2 {
  margin:0;
  color:#172630;
  font-size:42px;
  font-weight:630;
  letter-spacing:-.04em;
}
.catalog-title-row > p {
  max-width:480px;
  margin:0;
  color:#5f6d77;
  font-size:15px;
  line-height:1.65;
}
.catalog-group {
  padding-top:12px;
  scroll-margin-top:84px;
}
.catalog-group + .catalog-group {
  margin-top:72px;
}
.catalog-group-heading {
  display:grid;
  grid-template-columns:45px 1fr auto;
  align-items:center;
  gap:18px;
  margin-bottom:22px;
  padding-bottom:18px;
  border-bottom:1px solid #bfc9d1;
}
.catalog-group-heading > span {
  color:var(--blue);
  font-size:12px;
  font-weight:800;
}
.catalog-group-heading small {
  display:block;
  color:#72808a;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
}
.catalog-group-heading h3 {
  margin:4px 0 0;
  color:#172630;
  font-size:26px;
}
.catalog-group-heading > a {
  color:var(--blue);
  font-size:13px;
  font-weight:700;
}
.catalog-group-heading > b {
  color:#78858e;
  font-size:10px;
}
.visual-product-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.visual-product-card {
  display:grid;
  grid-template-columns:44% 56%;
  min-height:315px;
  overflow:hidden;
  border:1px solid #c5ced5;
  background:#fff;
}
.visual-product-wide {
  grid-column:1/-1;
  grid-template-columns:40% 60%;
}
.visual-product-card:hover {
  border-color:#7999b0;
}
.visual-product-image {
  position:relative;
  overflow:hidden;
  background:#e8edf0;
}
.visual-product-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .22s ease;
}
a.visual-product-card:hover img {
  transform:scale(1.018);
}
.visual-product-image > span {
  position:absolute;
  left:14px;
  bottom:13px;
  padding:6px 8px;
  color:#fff;
  background:#174f7a;
  font-size:8px;
  font-weight:800;
  letter-spacing:.07em;
}
.visual-product-info {
  display:flex;
  padding:27px;
  flex-direction:column;
}
.visual-product-info > small {
  color:var(--blue);
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
}
.visual-product-info h4 {
  margin:17px 0 0;
  color:#1a2933;
  font-size:23px;
  line-height:1.2;
}
.visual-product-info p {
  margin:12px 0 20px;
  color:#5e6c76;
  font-size:14px;
  line-height:1.6;
}
.visual-product-info > div {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-bottom:22px;
}
.visual-product-info > div b {
  padding:5px 7px;
  color:#405b6e;
  border:1px solid #c0cfd9;
  background:#f5f9fb;
  font-size:8px;
}
.visual-product-info > strong {
  margin-top:auto;
  color:var(--blue);
  font-size:12px;
}
.planned-product {
  color:#6f7a82;
  background:#fafbfc;
}
.planned-product .visual-product-image > span {
  color:#5f6c75;
  border:1px solid #b8c3ca;
  background:rgba(255,255,255,.92);
}
.planned-product .visual-product-info > small,.planned-product .visual-product-info > strong {
  color:#78858e;
}

/* Multi-interface chip configurator */
.configurator-hero {
  padding:54px 0 50px;
  border-bottom:1px solid var(--line);
  background:#f3f6f8;
}
.configurator-hero-grid {
  display:grid;
  grid-template-columns:1.05fr .95fr;
  align-items:end;
  gap:90px;
}
.configurator-hero h1 {
  max-width:770px;
  margin:0;
  color:#14222c;
  font-size:54px;
  font-weight:620;
  letter-spacing:-.048em;
  line-height:1.06;
}
.configurator-hero-grid > div:last-child > p {
  margin:0;
  color:#586873;
  font-size:16px;
  line-height:1.68;
}
.configurator-guide {
  display:flex;
  flex-wrap:wrap;
  gap:14px 22px;
  margin-top:22px;
}
.configurator-guide span {
  display:flex;
  align-items:center;
  gap:8px;
  color:#41515d;
  font-size:12px;
  font-weight:700;
}
.configurator-guide b {
  display:grid;
  place-items:center;
  width:23px;
  height:23px;
  color:#fff;
  background:var(--blue);
  font-size:9px;
}
.configurator-section {
  padding:40px 0 76px;
  border-bottom:1px solid var(--line);
  background:#e9eef2;
}
.configurator-workspace {
  display:grid;
  grid-template-columns:minmax(0,1fr) 380px;
  align-items:start;
  gap:18px;
}
.configurator-canvas {
  display:grid;
  grid-template-columns:minmax(280px,1fr) 248px minmax(280px,1fr);
  min-width:0;
  border:1px solid #b9c5ce;
  background:#fff;
  box-shadow:0 9px 26px rgba(22,44,60,.06);
}
.configurator-signal-panel {
  min-width:0;
  padding:22px;
}
.configurator-signal-panel:first-child {
  border-right:1px solid #c7d0d7;
}
.configurator-signal-panel:last-child {
  border-left:1px solid #c7d0d7;
}
.configurator-panel-heading {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
  padding-bottom:15px;
  border-bottom:1px solid #d1d8de;
}
.configurator-panel-heading span {
  color:var(--blue);
  font-size:9px;
  font-weight:800;
  letter-spacing:.09em;
}
.configurator-panel-heading h2 {
  margin:3px 0 0;
  color:#1b2a34;
  font-size:19px;
}
.configurator-panel-heading > small {
  color:#7a858d;
  font-size:8px;
  font-weight:700;
}
.interface-option-list {
  display:grid;
  gap:9px;
}
.interface-option {
  border:1px solid #ced6dc;
  background:#fff;
}
.interface-option.is-selected {
  border-color:#2f79b2;
  box-shadow:inset 3px 0 0 var(--blue);
}
.interface-toggle {
  display:grid;
  grid-template-columns:50px 1fr 18px;
  align-items:center;
  gap:11px;
  width:100%;
  min-height:68px;
  padding:9px 11px;
  color:#263742;
  border:0;
  background:#fff;
  cursor:pointer;
  text-align:left;
}
.interface-toggle:hover {
  background:#f7fafc;
}
.interface-option.is-selected .interface-toggle {
  background:#edf6fd;
}
.interface-code {
  display:grid;
  place-items:center;
  width:48px;
  height:34px;
  color:#285777;
  border:1px solid #9db3c2;
  background:#f4f8fb;
  font-size:8px;
  font-weight:800;
}
.interface-option.is-selected .interface-code {
  color:#fff;
  border-color:#1d6298;
  background:#1d6298;
}
.interface-toggle strong,.interface-toggle small {
  display:block;
}
.interface-toggle strong {
  font-size:11px;
}
.interface-toggle small {
  margin-top:3px;
  color:#77838c;
  font-size:8px;
}
.interface-toggle i {
  color:#1769c2;
  font-size:18px;
  font-style:normal;
  text-align:center;
}
.quantity-picker {
  display:none;
  grid-template-columns:1fr 34px 34px;
  align-items:center;
  gap:7px;
  padding:8px 11px 10px 72px;
  border-top:1px solid #d2dbe1;
  background:#f8fafb;
}
.interface-option.is-selected .quantity-picker {
  display:grid;
}
.quantity-picker > span {
  color:#6c7983;
  font-size:8px;
  font-weight:800;
  letter-spacing:.06em;
}
.quantity-picker button {
  height:29px;
  color:#405462;
  border:1px solid #b8c7d1;
  background:#fff;
  cursor:pointer;
  font-size:10px;
  font-weight:800;
}
.quantity-picker button[aria-pressed="true"] {
  color:#fff;
  border-color:#1769c2;
  background:#1769c2;
}
.configurator-chip-panel {
  display:flex;
  min-width:0;
  min-height:648px;
  padding:24px 18px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:#f5f8fa;
}
.selected-interface-stack {
  display:flex;
  width:100%;
  min-height:95px;
  flex-wrap:wrap;
  align-content:center;
  justify-content:center;
  gap:6px;
  text-align:center;
}
.selected-interface-stack > small {
  width:100%;
  color:#7a8790;
  font-size:8px;
  font-weight:800;
  letter-spacing:.08em;
}
.selected-interface-stack p {
  margin:3px 0 0;
  color:#879199;
  font-size:9px;
}
.selected-interface-stack span {
  padding:6px 7px;
  color:#285a7a;
  border:1px solid #a9becd;
  background:#fff;
  font-size:8px;
  font-weight:800;
}
.configurator-route {
  position:relative;
  width:2px;
  height:44px;
  overflow:hidden;
  background:#8198a8;
}
.configurator-route i {
  position:absolute;
  top:-7px;
  left:-2px;
  width:6px;
  height:6px;
  background:#1769c2;
  animation:configurator-flow 1.8s linear infinite;
}
.route-right i {
  animation-delay:.8s;
}
@keyframes configurator-flow {
  to { transform:translateY(58px); }
}
.configurator-chip {
  position:relative;
  display:flex;
  width:150px;
  height:150px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:#fff;
  background:#10283a;
  box-shadow:inset 0 0 0 8px #1d4865;
}
.configurator-chip img {
  width:46px;
  height:46px;
  margin-bottom:11px;
}
.configurator-chip > strong {
  max-width:126px;
  overflow:hidden;
  font-size:11px;
  letter-spacing:.05em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.configurator-chip > small {
  margin-top:5px;
  color:#80b5d9;
  font-size:6px;
  letter-spacing:.07em;
}
.configurator-result {
  position:sticky;
  top:92px;
  padding:24px;
  border:1px solid #b9c5ce;
  background:#fff;
  box-shadow:0 9px 26px rgba(22,44,60,.06);
}
.configurator-result-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding-bottom:15px;
  border-bottom:1px solid #d2d9df;
}
.configurator-result-head > span {
  color:#6f7e88;
  font-size:9px;
  font-weight:800;
  letter-spacing:.07em;
}
.configurator-result-head button {
  padding:0;
  color:#6c7983;
  border:0;
  background:none;
  cursor:pointer;
  font-size:10px;
  font-weight:700;
}
.configurator-result-title {
  padding:21px 0 18px;
}
.configurator-result-title > small,.configuration-code small {
  color:#7c8790;
  font-size:8px;
  font-weight:800;
  letter-spacing:.07em;
}
.configurator-result-title h2 {
  margin:6px 0 8px;
  color:#174766;
  font-size:28px;
  letter-spacing:-.025em;
  line-height:1.15;
}
.configurator-result-title p {
  min-height:66px;
  margin:0;
  color:#596873;
  font-size:12px;
  line-height:1.58;
}
.configuration-code {
  padding:12px;
  border:1px solid #c9d3da;
  background:#f5f8fa;
}
.configuration-code small,.configuration-code strong {
  display:block;
}
.configuration-code strong {
  margin-top:5px;
  color:#314b5d;
  font-size:10px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.configurator-specs {
  display:grid;
  grid-template-columns:1fr 1fr;
  margin:18px 0 0;
  border-top:1px solid #d2d9df;
  border-left:1px solid #d2d9df;
}
.configurator-specs div {
  min-height:66px;
  padding:10px;
  border-right:1px solid #d2d9df;
  border-bottom:1px solid #d2d9df;
}
.configurator-specs dt {
  color:#7a8690;
  font-size:8px;
}
.configurator-specs dd {
  margin:5px 0 0;
  color:#253640;
  font-size:9px;
  font-weight:700;
  line-height:1.4;
}
.configurator-result-actions {
  display:grid;
  gap:9px;
  margin-top:18px;
}
.configurator-result-actions .primary-button,.configurator-result-actions .secondary-button {
  width:100%;
  min-height:41px;
  font-size:11px;
  cursor:pointer;
}
.is-disabled {
  pointer-events:none;
  opacity:.45;
}
.copy-status {
  min-height:15px;
  margin:9px 0 0;
  color:#277153;
  font-size:9px;
}
.configurator-section[data-match-state="current"] .configurator-result-head > span {
  color:#237153;
}
.configurator-section[data-match-state="roadmap"] .configurator-result-head > span,
.configurator-section[data-match-state="roadmap"] .configurator-result-title h2 {
  color:#896122;
}
.configurator-section[data-match-state="roadmap"] .configurator-chip {
  background:#5a6871;
  box-shadow:inset 0 0 0 8px #73818a;
}
.selector-support-section {
  padding-top:82px;
  padding-bottom:92px;
}
.selector-support-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid #c5cfd6;
  border-left:1px solid #c5cfd6;
}
.selector-support-grid article {
  min-height:185px;
  padding:24px;
  border-right:1px solid #c5cfd6;
  border-bottom:1px solid #c5cfd6;
}
.selector-support-grid span {
  color:var(--blue);
  font-size:10px;
  font-weight:800;
}
.selector-support-grid strong {
  display:block;
  margin-top:28px;
  color:#1b2a34;
  font-size:16px;
}
.selector-support-grid p {
  margin:9px 0 0;
  color:#61707b;
  font-size:13px;
  line-height:1.58;
}

@media (max-width:1320px) {
  .configurator-workspace {
    grid-template-columns:1fr;
  }
  .configurator-result {
    position:static;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:0 26px;
  }
  .configurator-result-head,.configurator-result-title,.configuration-code {
    grid-column:1;
  }
  .configurator-specs,.configurator-result-actions,.copy-status,.configurator-result .engineering-note {
    grid-column:2;
  }
  .configurator-specs {
    grid-row:1/4;
    margin:0;
  }
}

@media (max-width:1050px) {
  .corporate-header .header-inner nav {
    gap:15px;
  }
  .corporate-header .header-inner nav a {
    font-size:12px;
  }
  .visual-platform-grid {
    grid-template-columns:1fr 1fr;
  }
  .visual-platform-future {
    grid-column:1/-1;
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .visual-platform-future .visual-platform-media {
    height:auto;
    min-height:300px;
    border-right:1px solid #c9d2d9;
    border-bottom:0;
  }
  .featured-product-grid,.selector-promo-grid,.engineering-section,.all-products-hero-grid,.configurator-hero-grid {
    grid-template-columns:1fr;
  }
  .selector-promo-visual {
    max-width:760px;
  }
  .engineering-section,.all-products-hero-grid,.configurator-hero-grid {
    gap:45px;
  }
  .product-form-navigation {
    grid-template-columns:1fr;
  }
  .configurator-canvas {
    grid-template-columns:minmax(250px,1fr) 210px minmax(250px,1fr);
  }
  .configurator-signal-panel {
    padding:16px;
  }
}

@media (max-width:850px) {
  .corporate-hero,.corporate-hero-inner {
    min-height:540px;
  }
  .corporate-hero-overlay {
    background:rgba(8,24,36,.82);
  }
  .corporate-products,.application-section,.engineering-section {
    padding-top:66px;
    padding-bottom:70px;
  }
  .corporate-section-head,.catalog-title-row {
    align-items:flex-start;
    flex-direction:column;
    gap:24px;
  }
  .visual-platform-grid {
    grid-template-columns:1fr;
  }
  .visual-platform-future {
    grid-column:auto;
    display:flex;
  }
  .visual-platform-future .visual-platform-media {
    height:250px;
    min-height:0;
    border-right:0;
    border-bottom:1px solid #c9d2d9;
  }
  .featured-product-main {
    grid-template-columns:1fr;
  }
  .featured-product-main .featured-product-image {
    min-height:310px;
  }
  .application-visual-grid {
    grid-template-columns:1fr;
  }
  .application-wide {
    grid-row:auto;
    min-height:480px;
  }
  .support-strip {
    grid-template-columns:1fr 1fr;
  }
  .visual-product-grid {
    grid-template-columns:1fr;
  }
  .visual-product-card,.visual-product-wide {
    grid-column:auto;
    grid-template-columns:42% 58%;
  }
  .configurator-canvas {
    grid-template-columns:1fr;
  }
  .configurator-signal-panel:first-child {
    border-right:0;
    border-bottom:1px solid #c7d0d7;
  }
  .configurator-signal-panel:last-child {
    border-top:1px solid #c7d0d7;
    border-left:0;
  }
  .configurator-chip-panel {
    min-height:430px;
  }
  .configurator-result {
    display:block;
  }
  .configurator-specs {
    margin-top:18px;
  }
  .selector-support-grid {
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width:600px) {
  .wide-container {
    width:min(100% - 28px,1460px);
  }
  .corporate-hero-copy h1 {
    font-size:43px;
  }
  .corporate-hero-copy > p:not(.eyebrow) {
    font-size:16px;
  }
  .corporate-hero-caption {
    display:none;
  }
  .corporate-hero .hero-actions {
    align-items:stretch;
    flex-direction:column;
  }
  .corporate-section-head h2,.engineering-copy h2,.catalog-title-row h2 {
    font-size:34px;
  }
  .catalog-button {
    width:100%;
  }
  .visual-platform-media {
    height:220px;
  }
  .visual-platform-copy {
    min-height:0;
    padding:24px;
  }
  .featured-product-section {
    padding:62px 0 68px;
  }
  .featured-product-grid {
    grid-template-columns:1fr;
  }
  .featured-product-main,.featured-product-secondary {
    display:block;
  }
  .featured-product-main .featured-product-image,.featured-product-secondary .featured-product-image {
    height:230px;
    min-height:0;
  }
  .featured-product-copy {
    padding:25px;
  }
  .application-visual-card,.application-wide {
    min-height:380px;
  }
  .selector-promo-section {
    padding:60px 0;
  }
  .selector-promo-visual {
    grid-template-columns:1fr;
    gap:14px;
    padding:25px;
  }
  .promo-signal-list {
    grid-template-columns:repeat(3,1fr);
  }
  .selector-promo-visual > i {
    width:2px;
    height:22px;
    margin:auto;
  }
  .promo-chip {
    width:145px;
    height:145px;
    margin:auto;
  }
  .selector-promo-copy h2 {
    font-size:32px;
  }
  .engineering-image,.engineering-image img {
    min-height:300px;
  }
  .engineering-links {
    flex-direction:column;
    gap:12px;
  }
  .support-strip {
    grid-template-columns:1fr;
    margin-bottom:64px;
  }
  .support-strip a {
    min-height:120px;
  }
  .all-products-hero {
    padding:44px 0 50px;
  }
  .all-products-hero h1 {
    font-size:43px;
  }
  .all-products-hero .hero-actions {
    align-items:stretch;
    flex-direction:column;
  }
  .all-products-hero-visual,.all-products-hero-visual img {
    min-height:240px;
  }
  .product-form-navigation > a {
    grid-template-columns:26px 58px 1fr 18px;
  }
  .product-form-navigation img {
    width:58px;
    height:58px;
  }
  .product-catalog-section {
    padding:60px 0 66px;
  }
  .catalog-group-heading {
    grid-template-columns:35px 1fr;
  }
  .catalog-group-heading > a,.catalog-group-heading > b {
    grid-column:2;
  }
  .visual-product-card,.visual-product-wide {
    grid-template-columns:1fr;
  }
  .visual-product-image {
    height:225px;
  }
  .configurator-hero {
    padding:40px 0 44px;
  }
  .configurator-hero h1 {
    font-size:39px;
  }
  .configurator-section {
    padding-top:22px;
    padding-bottom:54px;
  }
  .configurator-signal-panel {
    padding:15px;
  }
  .configurator-panel-heading {
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
  .quantity-picker {
    padding-left:60px;
  }
  .configurator-result {
    padding:19px;
  }
  .configurator-specs {
    grid-template-columns:1fr;
  }
  .selector-support-section {
    padding-top:60px;
    padding-bottom:66px;
  }
  .selector-support-grid {
    grid-template-columns:1fr;
  }
  .selector-support-grid article {
    min-height:0;
  }
}

@media (prefers-reduced-motion:reduce) {
  .configurator-route i {
    animation:none;
  }
}
