/* R4 reference reconstruction. Values are documented in docs/visual/.
   The user's six-part reference matrix is the component source of truth. */
:root {
  --font-brand: 'Open Sans', Arial, sans-serif;
  --font-industrial: 'Oxanium', 'Open Sans', sans-serif;
  --font-technical-title: 'Oswald', 'Open Sans', sans-serif;
  --font-technical-copy: 'Poppins', 'Open Sans', sans-serif;
  --font-document-entry: 'Work Sans', 'Open Sans', sans-serif;
  --font-selection: 'Exo 2', 'Open Sans', sans-serif;
  --selection-blue: #175b98;
  --brand-blue: #265d81;
  --orange: #b5532a; /* Accessible button adaptation, not a claim of exact source colour. */
  --orange-hover: #99431f;
  --ink: #333333;
  --muted: #566570;
  --wrap: 1224px;
}
body { font-family:var(--font-brand); font-size:16px; font-weight:400; line-height:24px; color:var(--ink); }
h1,h2,h3 { letter-spacing:normal; }
input,textarea,select,button { font-family:inherit; }
.wrap { width:calc(100% - 44px); max-width:1224px; }
.button { min-height:52px; padding:14px 26px; font-size:16px; font-weight:700; line-height:24px; letter-spacing:normal; border:0; border-radius:0; gap:16px; }
.button--outline { border:1px solid currentColor; padding:13px 25px; }
.eyebrow { font-size:12px; line-height:18px; letter-spacing:1.5px; color:#566570; }
.text-link { font-size:16px; line-height:24px; }
.review-strip { height:22px; font-family:var(--font-brand); font-size:10px; letter-spacing:.5px; }
.review-strip__detail { font-size:10px; }
.reference-utility { background:#fff; color:var(--brand-blue); border-bottom:1px solid #dedede; }
.reference-utility .wrap { height:39px; font-size:13px; letter-spacing:0; }
.reference-utility a { font-size:13px; }
.reference-header { border-bottom:0; }
.reference-header .header-inner { width:100%; max-width:none; height:70px; padding-left:56px; gap:24px; }
.reference-header .logo,.reference-header .logo img { width:190px; height:45px; }
.reference-header nav { gap:0; height:70px; }
.reference-header nav>a,.reference-header .nav-dropdown__trigger { color:#005b7d; font-family:var(--font-brand); font-size:16px; font-weight:700; line-height:24px; padding:23px 25px; height:70px; position:relative; }
.reference-header nav>a:after { content:''; position:absolute; right:0; top:0; height:70px; width:1px; background:#e6e6e6; transform:skewX(-44deg); }
.reference-header nav>a:hover,.reference-header nav .is-active { color:var(--orange); }
.reference-header .header-inner>.button { height:70px; min-height:70px; padding:23px 34px 23px 61px; margin-left:8px; font-size:16px; line-height:24px; clip-path:polygon(52px 0,100% 0,100% 100%,0 100%); white-space:nowrap; }
.reference-header .button svg { display:none; }
.reference-header .product-menu { top:70px; padding:36px max(50px,calc((100% - 1224px)/2)); }
.reference-header .product-menu a { font-size:16px; line-height:25px; }
.reference-header .product-menu .menu-overview { font-size:28px; }
.reference-home-hero { height:900px; min-height:900px; max-height:none; }
.reference-home-hero .hero__image { object-position:65% 49%; }
.reference-home-hero .hero__shade { background:linear-gradient(90deg,rgba(8,31,47,.91),rgba(8,31,47,.72) 45%,rgba(8,31,47,.30)); }
.reference-home-hero .hero__content { justify-content:center; padding:0; }
.reference-home-hero h1 { max-width:930px; font-family:var(--font-brand); font-size:59px; font-weight:700; line-height:69.2265px; letter-spacing:normal; }
.reference-home-hero p { max-width:640px; font-size:16px; line-height:24px; margin:18px 0 24px; color:#fff; }
.reference-home-hero .button-row { gap:32px; }
.reference-home-hero .button svg { display:none; }
.hero-white-action .button { background:#fff; color:var(--orange); }
.hero-white-action .button:hover { background:#f4f4f4!important; }
.home-specification-strip { background:#285f82; color:#fff; }
.home-specification-strip>.wrap { min-height:56px; display:flex; align-items:center; justify-content:center; gap:26px; font-size:15px; font-weight:600; }
.home-specification-strip i { display:block; height:17px; width:1px; background:#8cb2cc; }
.cmf-container { max-width:1080px; width:calc(100% - 44px); margin-inline:auto; }
.cmf-product-overview { padding:80px 0; font-family:'Inter',sans-serif; }
.cmf-product-overview h2,.cmf-capabilities h2 { font-family:var(--font-industrial); font-size:35px; font-weight:600; line-height:35px; text-transform:uppercase; margin-bottom:32px; padding-bottom:10px; }
.cmf-product-overview p { max-width:1060px; font-size:14px; line-height:23.8px; font-weight:500; color:#666; }
.cmf-product-overview p+p { margin-top:15px; }
.cmf-product-tiles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5.5%; margin-top:52px; }
.cmf-product-tiles>a { position:relative; height:223.65625px; border-radius:8px; overflow:hidden; background:var(--navy); }
.cmf-product-tiles img { width:100%; height:100%; object-fit:cover; }
.cmf-product-tiles span { position:absolute; left:0; bottom:0; width:100%; display:flex; justify-content:space-between; align-items:center; padding:8px; background:rgba(0,0,0,.5); color:#fff; font-family:'Inter',sans-serif; font-size:12.8px; line-height:23.8px; font-weight:400; }
.cmf-product-tiles svg { width:18px; }
.cmf-range-link { display:flex; justify-content:center; align-items:center; gap:20px; margin-top:36px; padding:18px; min-height:64px; color:white; background:#22497c; font-family:var(--font-industrial); font-size:22px; text-align:center; }
.cmf-capabilities { padding:78px 0; background-color:#202326; background-image:linear-gradient(30deg,#ffffff04 12%,transparent 12.5%,transparent 87%,#ffffff04 87.5%),linear-gradient(150deg,#ffffff04 12%,transparent 12.5%,transparent 87%,#ffffff04 87.5%); background-size:44px 76px; color:#fff; text-align:center; font-family:'Inter',sans-serif; }
.cmf-capabilities h2 { color:#fff; font-size:38px; line-height:38px; }
.cmf-value-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:36px; padding:35px 0 65px; }
.cmf-value-grid .head-outline { width:92px; height:76px; stroke:#55b8ed; }
.cmf-value-grid h3 { font-family:var(--font-industrial); font-size:15px; line-height:22px; color:#65c0ed; font-weight:600; max-width:180px; margin:12px auto 0; }
.cmf-divider-title { display:flex; align-items:center; justify-content:center; gap:45px; }
.cmf-divider-title h2 { margin:0; }
.cmf-divider-title>span { height:1px; background:#238abc; flex:1; }
.cmf-lead { max-width:690px; margin:27px auto 43px; color:#e1e5e8; font-size:16px; line-height:26px; }
.cmf-capability-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; margin-bottom:40px; }
.cmf-capability-grid>a { height:350px; position:relative; overflow:hidden; border:2px solid #2ea3f2; border-radius:8px; }
.cmf-capability-grid img { width:100%; height:100%; object-fit:cover; }
.cmf-capability-grid h3 { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:linear-gradient(0deg,#0d2333bd,#0d233340); color:#fff; padding:64px 16px; font-family:var(--font-industrial); font-size:24px; line-height:28.8px; font-weight:400; text-align:center; }
.cmf-capabilities>.cmf-container>.button { color:#7fc9f1; border-color:#7fc9f1; font-family:var(--font-industrial); }
.brand-engineering { padding:90px 0; background:#eff4f6; }
.brand-engineering>.wrap { display:grid; grid-template-columns:1.1fr 1fr; gap:80px; align-items:center; }
.brand-engineering h2 { font-family:var(--font-brand); font-size:56px; line-height:61.9998px; font-weight:700; color:var(--brand-blue); }
.brand-engineering p { font-size:17px; line-height:28px; margin:28px 0; }
.brand-engineering__photo { height:450px; }
.brand-engineering__photo img { width:100%; height:100%; object-fit:cover; }
.reference-resources h2 { font-family:var(--font-brand); font-size:56px; font-weight:700; line-height:61.9998px; color:var(--brand-blue); }
.section-heading>p,.section-heading>div>p { font-size:16px; line-height:26px; }
.resource-card h3 { font-family:var(--font-brand); font-size:23px; line-height:30px; font-weight:700; }
.resource-card p { font-size:15px; line-height:25px; }
.resource-card__diagram>span { font-size:10px; color:#5c717c; }
.resource-card .eyebrow { font-size:11px; }
.cta-band h2 { font-family:var(--font-brand); font-size:40px; line-height:46px; font-weight:700; }
.cta-band .eyebrow { font-size:11px; }
.site-footer { padding-top:65px; }
.footer-grid h2 { font-family:var(--font-brand); font-size:16px; font-weight:700; line-height:24px; }
.footer-grid>div>a:not(.brand-word),.footer-brand p { font-size:14px; line-height:24px; color:#c1d0d9; }
.footer-bottom { font-size:12px; line-height:20px; }
.footer-brand .small-label { font-size:10px; }
.direct-email { margin-top:20px; font-size:14px; line-height:24px; }
.direct-email__link { overflow-wrap:anywhere; text-decoration:underline; text-underline-offset:4px; }
.footer-grid>div>a.footer-email { overflow-wrap:anywhere; }
.selection-container { width:calc(100% - 44px); max-width:1200px; margin-inline:auto; }
.product-directory { padding-block:50px 75px; font-family:var(--font-selection); }
.product-directory h1 { font-size:38px; line-height:46px; font-weight:400; color:var(--selection-blue); }
.product-directory>.directory-intro { font-size:19px; line-height:28px; max-width:800px; margin:30px 0 42px; }
.directory-gateways { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-bottom:55px; }
.directory-gateways>a { background:#f0f0f0; }
.directory-gateways img { height:265px; width:100%; object-fit:cover; }
.directory-gateways>a>div { padding:28px; }
.directory-gateways h2 { font-size:30px; line-height:38px; font-weight:400; color:var(--selection-blue); }
.directory-gateways p { font-size:18px; line-height:27px; margin-top:15px; }
.directory-gateways span { display:flex; align-items:center; gap:20px; margin-top:22px; font-size:17px; color:var(--selection-blue); }
.product-directory>h2,.directory-help h2 { font-size:32px; line-height:40px; color:var(--selection-blue); font-weight:400; }
.directory-links { display:flex; flex-wrap:wrap; margin-top:25px; gap:12px; }
.directory-links a { border:1px solid var(--selection-blue); padding:10px 18px; color:var(--selection-blue); font-size:18px; }
.directory-help { margin-top:60px; border-top:1px solid #ddd; padding-top:40px; }
.directory-help p { font-size:18px; line-height:28px; max-width:820px; margin:20px 0; }
.directory-help>div { display:flex; flex-wrap:wrap; gap:25px; margin-bottom:30px; font-size:18px; color:var(--selection-blue); }
.selection-intro { padding-top:50px; padding-bottom:60px; }
.selection-intro h1 { font-family:var(--font-selection); font-size:38px; line-height:46px; font-weight:400; color:var(--selection-blue); margin-bottom:40px; }
.selection-mobile-title,.selection-mobile-grid { display:none; }
.selection-intro__columns { max-width:1176px; display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:start; margin-bottom:45px; }
.selection-intro__columns p { font-family:var(--font-selection); font-size:19px; font-weight:400; line-height:26px; color:#414141; }
.selection-intro__columns>img { width:550px; max-width:100%; height:222px; object-fit:cover; }
.selection-rows { max-width:1152px; }
.selection-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; height:300px; margin-bottom:20px; }
.selection-row__copy { position:relative; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; background:var(--selection-blue); color:white; padding:24px; }
.selection-row__copy:after { content:''; position:absolute; right:-30px; top:calc(50% - 30px); border-top:30px solid transparent; border-bottom:30px solid transparent; border-left:30px solid var(--selection-blue); z-index:1; }
.selection-row__copy h2 { font-family:var(--font-selection); font-size:43.7px; line-height:52px; font-weight:400; }
.selection-row__copy p { font-family:var(--font-selection); font-size:19px; line-height:26px; color:inherit; margin-top:18px; max-width:470px; }
.selection-button { border:1px solid currentColor; padding:9px 15px; margin-top:18px; font-family:var(--font-selection); font-size:19px; line-height:25px; font-weight:400; }
.selection-row__image { height:300px; background:#e8e8e8; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.selection-row__image img { width:100%; height:100%; object-fit:cover; object-position:center 58%; mix-blend-mode:multiply; }
.selection-row:not(:first-child) .selection-row__image img { object-fit:contain; object-position:center; transform:scale(1.25); }
.selection-row--reverse .selection-row__copy { grid-column:2; grid-row:1; background:white; color:var(--selection-blue); }
.selection-row--reverse .selection-row__copy:after { right:auto; left:-30px; border-left:0; border-right:30px solid white; }
.selection-row--reverse .selection-row__image { grid-column:1; grid-row:1; }
.selection-support { padding-top:10px; padding-bottom:75px; }
.selection-support h2 { font-family:var(--font-selection); font-size:38px; line-height:46px; font-weight:400; color:var(--selection-blue); }
.selection-support p { font-size:18px; line-height:28px; margin:25px 0; }
.selection-support .table-scroll { margin-top:45px; }
table { font-size:16px; line-height:28px; }
thead { font-size:15px; }
.tci-product-banner { height:500px; position:relative; background:var(--navy); overflow:hidden; }
.tci-product-banner>img { width:100%; height:100%; object-fit:cover; object-position:center 47%; }
.tci-product-banner>div { position:absolute; inset:0; background:rgba(10,30,43,.42); }
.tci-document { position:relative; max-width:960px; padding:60px; background:white; margin:-130px auto 0; }
.tci-title { padding-inline:60px; text-align:center; }
.tci-category { display:block; font-family:var(--font-technical-copy); font-size:14px; line-height:21px; font-weight:400; letter-spacing:2px; color:#087c8c; margin-bottom:62px; }
.tci-title h1 { font-family:var(--font-technical-title); font-size:66px; font-weight:400; line-height:72.6px; letter-spacing:-1px; text-transform:uppercase; color:#222; }
.tci-meta { display:flex; justify-content:center; flex-wrap:wrap; gap:30px; margin:60px -60px 0; padding:20px 5px; border-top:1px solid #e1e1e1; border-bottom:1px solid #e1e1e1; font-family:var(--font-technical-copy); color:#087c8c; font-size:14px; line-height:20px; }
.tci-copy { font-family:var(--font-technical-copy); font-size:16px; line-height:32px; color:#333; }
.tci-product-photo { width:300px; height:218px; max-width:100%; margin:75px auto 70px; }
.tci-product-photo img { width:100%; height:100%; object-fit:contain; }
.tci-copy p,.tci-copy li { font-family:var(--font-technical-copy); font-size:16px; line-height:32px; font-weight:400; color:#333; }
.tci-copy p { margin:0 0 28px; }
.tci-copy h3 { font-family:var(--font-technical-copy); font-size:26px; line-height:33.8px; font-weight:600; letter-spacing:normal; color:#444; margin:0; }
.tci-copy #general-notes h3 { font-size:24px; line-height:28.8px; }
.tci-copy h2:not(.visually-hidden) { font-family:var(--font-technical-copy); font-size:32px; line-height:41.6px; font-weight:600; color:#444; margin:32px 0 4px; }
.tci-copy ul { padding-left:48px; margin:0 0 24px; }
.tci-copy a { color:#087c8c; text-decoration:underline; text-underline-offset:3px; }
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip-path:inset(50%); white-space:nowrap!important; }
.prescor-document-entry { padding:75px 0 80px; background:#fff; }
.prescor-document-entry>.wrap { max-width:1200px; display:grid; grid-template-columns:minmax(0,840px) minmax(230px,300px); gap:60px; align-items:start; }
.prescor-document-entry h2 { font-family:var(--font-document-entry); font-size:40.5px; line-height:48.6px; font-weight:500; letter-spacing:normal; }
.prescor-document-sidebar h2 { font-size:32px; line-height:38.4px; }
.prescor-rule { display:block; width:140px; height:2px; background:var(--brand-blue); margin:34px 0 40px; }
.prescor-document-entry p { font-family:'Source Sans Pro',sans-serif; font-size:18px; line-height:34.2px; color:#3a3a3a; margin-bottom:30px; }
.prescor-document-entry .gallery-grid { gap:20px; }
.prescor-document-entry .gallery-item>img { height:230px; object-fit:contain; background:#fff; }
.prescor-document-entry .gallery-item>span { font-size:13px; line-height:20px; padding:14px; }
.prescor-resource-button { display:block; min-height:58px; padding:17px 15px; margin-bottom:18px; border:2px solid var(--brand-blue); border-radius:2px; color:var(--brand-blue); font-size:14px; line-height:20px; font-weight:700; text-transform:uppercase; text-align:center; }
.prescor-resource-button:hover { color:white; background:var(--brand-blue); }
.prescor-document-sidebar>.button { width:100%; font-size:15px; margin-top:10px; }
.prescor-document-primary { display:flex; width:100%; min-height:50px; align-items:center; justify-content:center; text-align:center; padding:12px 20px; margin:30px 0; border:2px solid var(--brand-blue); border-radius:3px; font-family:var(--font-brand); font-size:14px; line-height:22px; font-weight:600; text-transform:uppercase; color:var(--brand-blue); }
.prescor-document-primary:hover { background:var(--brand-blue); color:#fff; }
.reference-quote-hero { height:376px; position:relative; isolation:isolate; color:#fff; overflow:hidden; }
.reference-quote-hero>img { position:absolute; width:100%; height:100%; object-fit:cover; object-position:center 44%; z-index:-3; }
.reference-hero-shade { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,#102e43e0,#102e43b8); }
.reference-quote-hero>.wrap { padding-top:75px; }
.reference-quote-hero h1 { font-family:var(--font-brand); font-size:75px; font-weight:700; line-height:87.9997px; letter-spacing:normal; }
.reference-quote-hero p { font-size:16px; line-height:24px; color:#fff; margin:16px 0 28px; max-width:1224px; }
.reference-quote-hero .button svg { display:none; }
.reference-angle-bar { height:25px; background:linear-gradient(135deg,#d16038 0 36%,#285f82 36% 100%); }
.reference-quote-body { padding:110px 0 90px; }
.reference-form-container { max-width:800px; width:calc(100% - 44px); margin-inline:auto; }
.reference-form-container h2 { font-family:var(--font-brand); font-size:20px; font-weight:700; line-height:30px; color:#686868; margin-bottom:22px; }
.form-variant { border:0; padding:0; margin:0 0 8px; }
.form-variant legend { font-size:16px; line-height:24px; font-weight:700; color:#686868; margin-bottom:14px; }
.form-variant>label { display:flex; align-items:flex-start; gap:10px; font-size:14px; line-height:24px; font-weight:400; margin-bottom:6px; color:#686868; cursor:pointer; }
.form-variant input[type=radio] { flex-shrink:0; width:14px; min-height:14px; height:14px; padding:0; margin:5px 0 0; accent-color:var(--brand-blue); }
.reference-form-intro { font-size:16px; line-height:24px; margin:10px 0 25px; }
.reference-form-container label { font-family:var(--font-brand); font-size:16px; line-height:20.8px; font-weight:700; color:#686868; margin-bottom:25px; }
.reference-form-container .form-variant>label { font-size:14px; line-height:24px; font-weight:400; margin-bottom:6px; }
.reference-form-container .form-row { gap:32px; }
.reference-form-container input:not([type=radio]),.reference-form-container select { min-height:36px; height:36px; padding:3px 4px; margin-top:8px; border:0; border-bottom:1px solid #777; border-radius:0; font-size:16px; font-weight:400; line-height:28px; background:white; }
.reference-form-container textarea { padding:12px; min-height:120px; height:120px; border:1px solid #687e8b; font-size:16px; font-weight:400; line-height:24px; }
.reference-form-container input::placeholder,.reference-form-container textarea::placeholder { color:#536875; opacity:1; }
.reference-form-container .technical-fields { margin:32px 0; }
.reference-form-container .technical-fields summary { font-size:16px; line-height:24px; padding-block:19px; }
.reference-form-container .optional { font-size:13px; }
.reference-form-container .optional { color:#536875; }
.rfq-status { color:#435b6a; font-size:14px; line-height:24px; }
.rfq-status:empty { margin:0; }
.rfq-status:not(:empty) { margin-top:16px; }
.reference-header .header-inner>.button:focus-visible { box-shadow:inset 0 0 0 3px white,inset 0 0 0 6px #122e43; }
.reference-form-container .privacy-note { font-size:14px; line-height:24px; max-width:760px; }
.reference-form-container .form-submit { width:224px; height:52px; padding:14px 26px; font-size:16px; justify-content:center; }
.reference-form-container .form-submit:disabled { opacity:1; }
.reference-form-container .form-submit svg { display:none; }
.reference-form-container .preview-form-note { font-size:13px; line-height:22px; color:#536875; }
.reference-form-container .context-note { font-size:14px; line-height:24px; margin:20px 0; }
.reference-form-help { border-top:1px solid var(--line); margin-top:65px; padding-top:38px; }
.reference-form-help p,.reference-form-help>a { font-size:16px; line-height:26px; }
.reference-form-help>a { display:block; margin-top:14px; color:var(--brand-blue); }
.article-section h2 { font-family:var(--font-brand); font-size:32px; line-height:40px; font-weight:700; }
.article-section p,.check-list li { font-size:16px; line-height:28px; }
.article-nav>a { font-size:14px; line-height:24px; }
.page-intro h1 { font-family:var(--font-brand); font-size:56px; line-height:65.7px; font-weight:700; }
.page-intro .lead { font-size:18px; line-height:29px; }
.gallery-item:last-child { display:block; }
.faq-block summary { font-size:16px; line-height:26px; }
.faq-block details p { font-size:16px; line-height:28px; }
.related-links a { font-size:16px; line-height:26px; }
.spec-callout p,.fine-print { font-size:14px!important; line-height:24px!important; }
.privacy-note { font-size:14px; }
#main { position:relative; }
.page-breadcrumbs { position:absolute; z-index:3; top:12px; left:max(22px,calc((100% - 1224px)/2)); max-width:calc(100% - 44px); color:#526773; font-size:12px; line-height:20px; }
.page-breadcrumbs ol { display:flex; flex-wrap:wrap; gap:5px 10px; list-style:none; padding:0; margin:0; }
.page-breadcrumbs li+li:before { content:'/'; margin-right:10px; }
.page-breadcrumbs a { text-decoration:underline; text-underline-offset:3px; }
body[data-page-id^=C] .page-breadcrumbs,body[data-page-id=F01] .page-breadcrumbs { color:#fff; text-shadow:0 1px 3px #102e43; }
.page-intro { padding-top:66px; }
.faq-main-answer { display:inline-block; margin:0 0 25px; font-size:15px; line-height:25px; color:var(--brand-blue); text-decoration:underline; }
.technical-related { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 35px; padding:30px 0 65px; border-top:1px solid #d6e0e6; font-size:16px; line-height:27px; color:var(--brand-blue); }
@media(max-width:767px) {
 .page-breadcrumbs { font-size:11px; line-height:17px; }
 body[data-page-id=F01] .page-breadcrumbs { color:#526773; text-shadow:none; }
 .selection-intro { padding-top:65px; }
 .technical-related { grid-template-columns:1fr; }
}
.spec-callout .spec-callout-title { font-size:22px!important; line-height:28px!important; font-weight:700; color:var(--ink); margin-bottom:12px; }
.engineering-checks { padding:30px 0 70px; }
.engineering-checks>h2 { font-family:var(--font-selection); font-size:38px; line-height:46px; color:var(--selection-blue); font-weight:400; }
.engineering-checks>p { font-size:17px; line-height:28px; max-width:900px; margin:20px 0; }
.selection-schematics { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px; margin:35px 0 15px; }
.selection-schematics a { display:flex; flex-direction:column; align-items:center; border:1px solid #d5dfe5; padding:20px 10px; color:var(--selection-blue); text-align:center; font-size:15px; line-height:23px; }
.selection-schematics .head-outline { width:130px; max-width:100%; height:90px; margin-bottom:15px; }
.engineering-checks .table-scroll { margin-bottom:30px; }
.figure-note { font-size:14px!important; line-height:24px!important; color:#566570; }
.dimension-figure { margin:0 0 45px; padding:20px; background:#f4f7f8; border:1px solid #d6e0e6; }
.diagram-scroll { overflow:auto; }
.dimension-figure svg { width:100%; min-width:520px; max-width:none; height:auto; display:block; stroke:none; }
.dimension-figure figcaption { font-size:14px; line-height:25px; color:#435b6a; padding-top:18px; }
.material-shape-links { display:flex; flex-wrap:wrap; gap:12px; margin:25px 0; }
.material-shape-links a { padding:10px 15px; border:1px solid #087c8c; font-size:15px; line-height:24px; text-decoration:none; }
.material-options .table-scroll { margin-bottom:28px; }
.material-options table { font-family:var(--font-technical-copy); font-size:15px; line-height:27px; }
.shape-profile-guide { margin:35px 0; }
.shape-profile-guide .selection-schematics { margin-top:0; }
.article-layout .selection-schematics { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cmf-product-overview .selection-schematics a { font-family:var(--font-brand); font-size:14px; background:#f4f7f8; border:0; }
.comparison-profiles { display:grid; grid-template-columns:1fr 1fr; gap:30px; text-align:center; margin-bottom:30px; }
.comparison-profiles .head-outline { width:200px; max-width:100%; height:125px; }
.comparison-profiles h2 { font-size:23px; line-height:32px; color:var(--brand-blue); }
.geometry-comparison { margin-bottom:50px; }
.geometry-comparison>p { font-size:15px; line-height:26px; margin-top:20px; }
.company-photo { margin-bottom:45px; }
.company-photo>img { width:100%; max-height:470px; object-fit:cover; }
.company-photo figcaption { font-size:14px; line-height:25px; padding-top:15px; color:#566570; }
.font-license-links { font-size:14px; line-height:26px; }
.home-rfq { padding:80px 0; background:#f0f4f5; }
.home-rfq>.wrap { display:grid; grid-template-columns:1fr 1.15fr; gap:80px; }
.home-rfq h2 { font-size:56px; line-height:62px; color:var(--brand-blue); font-weight:700; margin:18px 0 25px; }
.home-rfq>.wrap>div>p { font-size:17px; line-height:28px; max-width:400px; margin-bottom:25px; }
.home-rfq .reference-form-container { width:100%; }
.home-rfq textarea,.home-rfq input { background:transparent!important; }
.rfq-section { border:0; padding:0; margin:30px 0; min-width:0; }
.rfq-section legend { font-size:20px; line-height:28px; font-weight:700; color:var(--brand-blue); margin-bottom:20px; }
.rfq-section [data-conical-fields] { padding:15px; border:1px solid #d6e0e6; min-width:0; margin:20px 0; }
.rfq-section [data-conical-fields]>legend { font-size:17px; }
.field-error { display:block; margin:7px 0 0; color:#992b1b; font-size:14px; line-height:22px; font-weight:400; }
[aria-invalid=true] { border-color:#992b1b!important; }
.admin nav { display:flex; flex-wrap:wrap; gap:30px; margin:20px 0; }
@media(max-width:767px) {
 .engineering-checks>h2 { font-size:30px; line-height:38px; }
 .selection-schematics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
 .article-layout .selection-schematics { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .selection-schematics a { min-height:150px; }
 .dimension-figure { padding:12px; }
 .home-rfq { padding:55px 0; }
 .home-rfq>.wrap { grid-template-columns:1fr; gap:35px; }
 .home-rfq h2 { font-size:40px; line-height:45px; }
 .home-rfq .reference-form-container { width:100%; }
 .rfq-section legend { font-size:20px; line-height:28px; }
}
@media(max-width:1180px) and (min-width:1001px) {
  .reference-header .header-inner { padding-left:26px; gap:12px; }
  .reference-header .logo,.reference-header .logo img { width:165px; }
  .reference-header nav>a,.reference-header .nav-dropdown__trigger { padding-inline:16px; font-size:14px; }
  .reference-header .header-inner>.button { padding-right:20px; padding-left:43px; font-size:14px; clip-path:polygon(35px 0,100% 0,100% 100%,0 100%); }
}
@media(max-width:1000px) {
  .reference-header .header-inner { height:64px; padding-inline:22px; width:100%; gap:18px; }
  .reference-header .logo,.reference-header .logo img { width:170px; height:40px; }
  .reference-header .menu-toggle { display:flex!important; margin-left:auto; min-width:40px; height:44px; }
  .reference-header nav { display:none; top:64px; height:auto; padding:20px 22px; max-height:var(--navigation-height,calc(100dvh - 126px)); overflow-y:auto; overscroll-behavior-y:contain; }
  .reference-header nav.is-open { display:block; }
  .reference-header nav>a,.reference-header .nav-dropdown__trigger { height:auto; padding:15px 0; font-size:16px; line-height:24px; }
  .reference-header nav>a:after { display:none; }
  .reference-header .header-inner>.button { height:44px; min-height:44px; padding:10px 18px; font-size:14px; line-height:24px; clip-path:none; margin:0; }
  .reference-header .product-menu { position:static; padding:15px 0 20px; }
  .reference-utility .wrap { height:28px; font-size:12px; }
  .reference-utility a { font-size:12px; }
  .cmf-product-tiles { gap:22px; }
  .cmf-capability-grid { gap:18px; }
  .cmf-capability-grid h3 { font-size:22px; }
  .brand-engineering>.wrap { gap:45px; }
  .brand-engineering h2 { font-size:44px; line-height:49px; }
  .prescor-document-entry>.wrap { grid-template-columns:minmax(0,1fr) 240px; gap:35px; }
  .prescor-document-entry .gallery-grid { grid-template-columns:1fr; }
  .tci-document { width:calc(100% - 44px); padding-inline:45px; }
  .tci-title { padding-inline:25px; }
}
@media(max-width:767px) {
  body { font-size:16px; line-height:24px; }
  .wrap { width:calc(100% - 44px); }
  .reference-utility { display:none; }
  .reference-header .header-inner { height:92px; gap:12px; }
  .reference-header .logo,.reference-header .logo img { width:190px; height:45px; }
  .reference-header .header-inner>.button { display:none; }
  .reference-header .menu-toggle { min-width:28px; width:28px; padding:4px; }
  .reference-header .menu-toggle span { width:26px; background:var(--orange); }
  .reference-header nav { top:92px; }
  .reference-utility .wrap,.reference-utility a { font-size:10px; line-height:16px; letter-spacing:0; }
  .review-strip { font-size:9px; letter-spacing:.3px; height:22px; }
  .review-strip__detail { font-size:9px; }
  .reference-header .product-menu a { font-size:15px; }
  .reference-home-hero { height:450px; min-height:450px; max-height:none; }
  .reference-home-hero .hero__content { padding-top:40px; padding-bottom:20px; min-height:450px; justify-content:flex-start; }
  .reference-home-hero h1 { font-size:43.4px; line-height:50.9225px; font-weight:700; max-width:346px; }
  .reference-home-hero p { font-size:16px; line-height:24px; margin:4px 0 20px; }
  .reference-home-hero .hero__shade { background:linear-gradient(90deg,#102b3ee8,#102b3eb8); }
  .reference-home-hero .button-row { display:flex; gap:12px; align-items:flex-start; flex-direction:column; }
  .reference-home-hero .button { font-size:16px; line-height:24px; min-height:52px; padding:14px 26px; }
  .home-angle-bar { height:15px; }
  .home-specification-strip>.wrap { padding-block:15px; gap:15px; font-size:12px; line-height:20px; flex-wrap:wrap; }
  .home-specification-strip i { height:13px; }
  .cmf-product-overview { padding:58px 0; }
  .cmf-container { width:80%; }
  .cmf-product-overview h2 { font-size:35px; line-height:35px; margin-bottom:25px; }
  .cmf-product-overview p { font-size:14px; line-height:23.8px; }
  .cmf-product-tiles { grid-template-columns:1fr; gap:24px; margin-top:35px; }
  .cmf-product-tiles>a { height:217.75px; }
  .cmf-product-tiles span { padding:8px; font-size:12.8px; line-height:23.8px; }
  .cmf-range-link { font-size:20px; line-height:26px; }
  .cmf-capabilities { padding:55px 0; }
  .cmf-capabilities h2 { font-size:30px; line-height:30px; }
  .cmf-value-grid { grid-template-columns:1fr 1fr; gap:30px 20px; padding:20px 0 55px; }
  .cmf-value-grid h3 { font-size:14px; }
  .cmf-divider-title { gap:20px; }
  .cmf-lead { font-size:16px; line-height:26px; margin-bottom:32px; }
  .cmf-capability-grid { grid-template-columns:1fr; gap:32px; }
  .cmf-capability-grid>a { height:350px; }
  .cmf-capability-grid h3 { font-size:24px; line-height:28.8px; padding:18px 10px; }
  .cmf-capabilities>.cmf-container>.button { font-size:15px; }
  .brand-engineering { padding:58px 0; }
  .brand-engineering>.wrap { grid-template-columns:1fr; gap:35px; }
  .brand-engineering h2,.reference-resources h2 { font-size:40px; line-height:44.2856px; }
  .brand-engineering p { font-size:16px; line-height:26px; margin:22px 0; }
  .brand-engineering__photo { height:350px; }
  .section-heading>p,.section-heading>div>p { font-size:16px; line-height:26px; }
  .resource-card { grid-template-columns:110px minmax(0,1fr); gap:18px; }
  .resource-card h3 { font-size:20px; line-height:27px; }
  .resource-card p { font-size:14px; line-height:23px; }
  .resource-card .eyebrow { font-size:10px; }
  .resource-card__diagram>span { font-size:9px; }
  .cta-band h2 { font-size:34px; line-height:40px; }
  .cta-band .button { font-size:16px; line-height:24px; }
  .cta-band .eyebrow { font-size:11px; }
  .footer-grid h2 { font-size:15px; line-height:24px; }
  .footer-grid>div>a:not(.brand-word),.footer-brand p { font-size:14px; line-height:24px; }
  .footer-bottom { font-size:12px; line-height:21px; }
  .footer-bottom>div { gap:20px; flex-wrap:wrap; }
  .selection-container { width:calc(100% - 44px); }
  .product-directory { padding-block:35px 55px; }
  .product-directory h1 { font-size:32px; line-height:40px; }
  .product-directory>.directory-intro { font-size:17px; line-height:27px; }
  .directory-gateways { grid-template-columns:1fr; }
  .directory-gateways h2 { font-size:26px; line-height:34px; }
  .directory-gateways p,.directory-help p { font-size:16px; line-height:26px; }
  .product-directory>h2,.directory-help h2 { font-size:28px; line-height:36px; }
  .directory-links a { font-size:16px; }
  .selection-intro { padding-top:24px; padding-bottom:35px; }
  .selection-desktop-title,.selection-intro__columns,.selection-rows { display:none; }
  .selection-mobile-title { display:block; }
  .selection-intro h1 { font-size:32px; line-height:40px; text-align:center; margin-bottom:35px; }
  .selection-mobile-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px 3.625px; width:calc(100vw - 12px); margin-left:-22px; }
  .selection-mobile-grid>a { min-width:0; text-align:center; }
  .selection-mobile-grid img { width:100%; height:136px; object-fit:contain; }
  .selection-mobile-grid h2 { font-family:var(--font-selection); font-size:16px; line-height:21px; font-weight:400; color:#616161; margin-top:12px; }
  .selection-support h2 { font-size:30px; line-height:38px; }
  .selection-support p { font-size:16px; line-height:26px; }
  .selection-support .button { font-size:15px; }
  .tci-product-banner { height:360px; }
  .tci-document { width:100%; padding:40px 60px; margin-top:-90px; }
  .tci-title { padding-inline:0; }
  .tci-category { font-size:11px; line-height:18px; letter-spacing:1px; margin-bottom:30px; }
  .tci-title h1 { font-size:44px; line-height:50px; letter-spacing:-.5px; }
  .tci-meta { margin:32px 0 0; gap:8px; flex-direction:column; font-size:12px; line-height:20px; padding:16px 0; }
  .tci-product-photo { margin:45px auto 45px; width:300px; height:218px; }
  .tci-copy p,.tci-copy li { font-size:16px; line-height:32px; }
  .tci-copy h3 { font-size:20px; line-height:26px; }
  .tci-copy #general-notes h3 { font-size:20px; line-height:26px; }
  .tci-copy h2:not(.visually-hidden) { font-size:25px; line-height:32.5px; }
  .tci-copy ul { padding-left:48px; }
  .prescor-document-entry { padding-block:55px; }
  .prescor-document-entry>.wrap { display:block; }
  .prescor-document-entry h2 { font-size:40.5px; line-height:48.6px; }
  .prescor-document-sidebar h2 { font-size:32px; line-height:38.4px; }
  .prescor-document-entry p { font-size:18px; line-height:34.2px; }
  .prescor-document-entry .gallery-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
  .prescor-document-entry .gallery-item>img { height:180px; }
  .prescor-document-entry .gallery-item:last-child { grid-column:1/-1; display:block; }
  .prescor-document-entry .gallery-item:last-child>img { height:240px; }
  .prescor-document-sidebar { padding-top:45px; }
  .prescor-document-sidebar .prescor-rule { margin:22px 0 28px; }
  .reference-quote-hero { height:390px; margin-top:52px; }
  .reference-quote-hero>.wrap { padding-top:44px; }
  .reference-quote-hero h1 { font-size:43.4px; line-height:50.9225px; }
  .reference-quote-hero p { font-size:16px; line-height:24px; margin:20px 0 26px; }
  .reference-quote-hero .button { font-size:16px; }
  .reference-angle-bar { height:15px; }
  .reference-quote-body { padding:60px 0 70px; }
  .reference-form-container { width:calc(100% - 44px); }
  .reference-form-container h2 { font-size:20px; line-height:30px; }
  .reference-form-container label { font-size:16px; line-height:20.8px; }
  .reference-form-container .form-variant>label { font-size:14px; line-height:24px; }
  .reference-form-container .form-row { display:block; }
  .reference-form-container input:not([type=radio]),.reference-form-container select { height:44px; min-height:44px; font-size:16px; line-height:28px; padding:7px 4px; }
  .reference-form-container textarea { height:140px; font-size:16px; }
  .reference-form-container .technical-fields .form-row { display:block; }
  .reference-form-container .privacy-note { font-size:14px; line-height:24px; }
  .reference-form-container .form-submit { width:224px; max-width:100%; }
  .reference-form-container .preview-form-note { font-size:13px; line-height:22px; }
  .article-section h2 { font-size:26px; line-height:34px; }
  .article-section p,.check-list li { font-size:16px; line-height:28px; }
  .page-intro h1 { font-size:40px; line-height:47px; }
  .page-intro .lead { font-size:17px; line-height:28px; }
  .faq-block summary,.faq-block details p { font-size:16px; line-height:27px; }
  .related-links a { font-size:15px; line-height:25px; }
  .policy-page>.lead,.policy-review-note { font-size:16px; line-height:27px; }
}
@media(max-width:370px) {
  .reference-header .header-inner { padding-inline:16px; gap:8px; }
  .reference-header .logo,.reference-header .logo img { width:128px; }
  .reference-header .header-inner>.button { min-width:108px; font-size:11px; }
  .reference-home-hero h1 { font-size:40px; line-height:47px; }
  .home-specification-strip>.wrap { gap:10px; font-size:11px; }
  .cmf-capability-grid { grid-template-columns:1fr; }
  .tci-document { padding-inline:40px; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .button,.product-card,.product-card__image img { transition:none; }
  .product-card:hover { transform:none; }
}

body[data-page-id^=C] .page-breadcrumbs { background:#102e43e0; padding:2px 6px; }
@media(min-width:768px) { body[data-page-id=F01] .page-breadcrumbs { background:#102e43e0; padding:2px 6px; } }

.rfq-recovery-help { color:#435b6a; font-size:14px; line-height:24px; margin:16px 0; }
.rfq-recovery-help a { color:#005b7d; text-decoration:underline; text-underline-offset:3px; }
