/* Layout remains in its own layer. All text roles are defined here, once. */
@import url('styles.css') layer(layout);
@import url('site.css') layer(layout);

:root {
  --site-sans:Arial,'Helvetica Neue',Helvetica,sans-serif;
  --type-h1: 56px;
  --type-h2: 36px;
  --type-h3: 24px;
  --type-body: 16px;
  --type-ui: 14px;
  --type-note: 12px;
  --type-label: 12px;
  --type-nav: 16px;
}
body {font:400 var(--type-body)/1.6 var(--site-sans);letter-spacing:0;font-kerning:normal;}
h1,h2,h3 {font-family:var(--site-serif);font-weight:400;letter-spacing:-.025em;}
h1 {font-size:var(--type-h1);line-height:1.1;}
h2 {font-size:var(--type-h2);line-height:1.15;}
h3 {font-size:var(--type-h3);line-height:1.25;}
p,li,dd,.page-lede,.large-copy {font-size:var(--type-body);line-height:1.6;letter-spacing:0;}
.split-hero h1 em {font-size:var(--type-h3);line-height:1.35;letter-spacing:-.015em;}
.hero h1 {font-size:var(--type-h1);line-height:1.02;}
.hero h1 span {font-size:calc(var(--type-h1) * .78);line-height:1.15;}
.hero-description {font-size:var(--type-body);line-height:1.65;}

/* Section labels and editorial notes use one size each across every page. */
.eyebrow,.home-reasons article>span,.contact-details dt,
.step-index,.factory-index,.site-number,.network-footline {
  font:500 var(--type-label)/1.5 var(--site-sans);letter-spacing:.1em;
}
.breadcrumbs,.logo-note,.fineprint,.table-note,.field-help,.local-form-note,
.factory-capacity,.catalog-result-count,#document-count,.document-link small,
.split-hero-image figcaption,.technical-group summary small,.table-tools,
.certificate-caption>span,.site-row small,.advantage small,.company-numbers span,
.footer-bottom,.contact>small,#site-results small,.document-symbol {
  font-size:var(--type-note);line-height:1.6;
}
.logo-note,.fineprint,.table-note,.field-help,.local-form-note {color:#526e83;}
.split-hero-image figcaption,.contact>small,#site-results small {letter-spacing:.08em;}
.site-row strong,.certificate-caption>strong,.technical-group>summary {
  font:400 var(--type-h3)/1.25 var(--site-serif);letter-spacing:-.025em;
}
.certificate-caption>strong {white-space:normal;}
.network-intro {font-size:var(--type-body);line-height:1.65;}
.industry-card>span,.advantage p {font-size:var(--type-ui);line-height:1.5;}
.stats strong,.company-numbers strong {font:400 var(--type-h2)/1.15 var(--site-serif);}
.stats small {font-size:var(--type-note);line-height:1.5;letter-spacing:.05em;}
.timeline strong {font:400 var(--type-h3)/1.25 var(--site-serif);}

/* Navigation: parent 16px / 600, category 16px / 600, child 14px / 400. */
.site-header nav>a,.mega-menu>summary,.menu-label {
  font:600 var(--type-nav)/1.5 var(--site-sans);letter-spacing:0;
}
.menu-label {text-transform:none;color:var(--site-ink);margin-bottom:8px;}
.mega-panel a,.mega-panel .menu-all {font:400 var(--type-ui)/1.6 var(--site-sans);}
.mega-panel .menu-all {font-weight:600;}
.page-subnav,.text-link,.button,.site-button,.filter-buttons button,
.product-pills a,.quality-inquiry,.view-all,.learn,.footer-links a,
.footer-brand>a:last-child,.menu-toggle,.language {
  font-size:var(--type-ui);line-height:1.5;
}
.button,.site-button {font-family:var(--site-sans);font-weight:500;}
.site-footer {background:#edf4f9;border-top:1px solid #c9dbe8;padding-top:48px;column-gap:48px;}
.footer-links {gap:10px;}
.footer-links h3 {font:600 var(--type-nav)/1.4 var(--site-sans);letter-spacing:-.01em;text-transform:none;margin-bottom:12px;}
.footer-links a {font:400 var(--type-ui)/1.55 var(--site-sans);letter-spacing:0;color:#34546d;}
.footer-links a:hover {color:#0c3451;}
.footer-brand p {font-size:var(--type-body);font-weight:400;line-height:1.6;color:#34546d;}
.footer-brand>a:last-child {font-weight:500;color:#173d59;}
.footer-bottom {color:#557187;padding-top:22px;}
.faq-list summary,.document-link strong {font:500 var(--type-body)/1.6 var(--site-sans);}
#site-results a {font-size:var(--type-ui);line-height:1.5;}
#site-search h2 {font-size:var(--type-h2);line-height:1.15;}
#site-search label,#rfq-form label,.document-search {font-size:var(--type-ui);line-height:1.5;}
#rfq-form .checkbox-label span {font-size:var(--type-note);line-height:1.6;}
input,select,textarea,#rfq-form input:not([type=checkbox]),#rfq-form select,
#rfq-form textarea,#site-search input,.catalog-search input,.document-search input {
  font:400 16px/1.5 var(--site-sans);
}
.table-tools input,.table-scroll table {font-size:var(--type-ui);line-height:1.6;}

/* Text containers grow with the shared scale; no fixed-height captions. */
.site-header {height:80px;min-height:80px;}
.site-header nav {margin-left:auto;gap:28px;}
.site-header .tools {margin-left:36px;gap:22px;}
.site-header .tools .button {min-width:88px;min-height:42px;}
.hero {min-height:410px;}
.hero-copy {padding-top:36px;}
.hero .button {width:auto;min-height:44px;margin-top:20px;}
.collection {height:auto;padding-top:24px;padding-bottom:24px;}
.section-head {height:auto;align-items:center;gap:24px;margin-bottom:20px;}
.view-all {margin-top:0;white-space:nowrap;}
.reference-product {display:flex;flex-direction:column;}
.product-caption {height:auto;min-height:176px;display:flex;flex:1;flex-direction:column;padding:18px;}
.product-caption h3 {font-size:var(--type-h3);line-height:1.25;letter-spacing:-.025em;}
.product-caption p {margin-top:8px;}
.product-caption p br {display:none;}
.learn {margin-top:auto;padding-top:14px;padding-right:32px;}
.product-caption>.circle {right:16px;bottom:18px;}
.industries {height:auto;min-height:310px;align-items:center;}
.industry-copy>p br {display:none;}
.industry-copy .button,.manufacturing .button {min-height:44px;height:auto;padding:10px 18px;}
.industry-card>span {height:auto;min-height:54px;padding:10px;}
.industry-card .circle {width:22px;height:22px;}
.manufacturing {height:auto;min-height:340px;}
.manufacturing-copy {padding-top:24px;padding-bottom:24px;}
.manufacturing-copy>p {max-width:480px;}
.manufacturing-copy>p br {display:none;}
.advantage {height:auto;min-height:52px;margin-bottom:12px;gap:14px;}
.advantage p {white-space:normal;}
.advantages {padding:26px;}
.advantages i {display:none;}
.contact {height:auto;min-height:200px;padding-top:30px;padding-bottom:30px;}
.contact p {white-space:normal;max-width:350px;}
.contact p br {display:none;}
.contact .light {font-size:var(--type-ui);min-height:44px;flex-shrink:0;}
.contact>small {flex-shrink:0;}
.site-row small {white-space:normal;}
.catalog-card p {min-height:0;}
.catalog-card {display:flex;flex-direction:column;}
.catalog-card>div:last-child {display:flex;flex-direction:column;flex:1;}
.catalog-card .text-link {margin-top:auto;padding-top:18px;}
.site-cta {grid-template-columns:1fr 1fr auto;gap:30px;}
.industry-feature p.large-copy {font-size:var(--type-body);}

@media(min-width:761px) and (max-width:1100px) {
  :root {--type-h1:48px;--type-h2:32px;--type-h3:24px;}
  .site-header nav {gap:16px;}
  .site-header .tools {margin-left:20px;gap:14px;}
  .site-header .language {display:none;}
  .hero h1 {font-size:48px;}
  .hero h1 span {font-size:34px;}
  .hero-copy {max-width:55%;}
  .hero-copy .eyebrow {max-width:340px;}
  .industries {grid-template-columns:220px minmax(0,1fr);gap:20px;}
  .industry-tiles {overflow-x:auto;grid-template-columns:repeat(5,140px);}
  .manufacturing {grid-template-columns:70% 30%;}
  .manufacturing-copy>p {max-width:360px;}
  .site-cta {grid-template-columns:1fr 1fr;}
  .contact {flex-wrap:wrap;gap:22px;}
  .contact .divider {display:none;}
}
@media(max-width:760px) {
  :root {--type-h1:36px;--type-h2:28px;--type-h3:22px;--type-body:15px;--type-label:11px;}
  .site-header {height:74px;min-height:74px;}
  .site-header nav {top:100%;margin:0;gap:20px;max-height:calc(100dvh - 74px);overflow-y:auto;}
  .site-header .tools {margin-left:12px;gap:12px;}
  .site-header .tools .button {min-width:64px;min-height:38px;width:auto;padding:0 12px;}
  .menu-toggle {margin-left:auto;}
  .mega-panel {padding:18px;}
  .hero {height:570px;min-height:0;}
  .hero-copy {padding-top:28px;}
  .hero h1 span {font-size:28px;}
  .hero-copy .eyebrow {font-size:var(--type-label);letter-spacing:.08em;}
  .hero-description {font-size:var(--type-body);}
  .section-head {display:block;}
  .section-head .view-all {display:inline-block;margin-top:12px;}
  .collection {padding-top:28px;padding-bottom:28px;}
  .product-caption {padding:14px 12px;min-height:225px;}
  .product-caption>.circle {right:12px;bottom:16px;}
  .industry-tiles {margin-top:22px;}
  .industries {min-height:0;}
  .manufacturing {min-height:0;}
  .manufacturing-copy {padding-top:28px;padding-bottom:28px;}
  .manufacturing-copy>p {max-width:100%;}
  .advantages {padding:25px 5%;}
  .advantage {min-height:0;margin:0;gap:8px;}
  .contact {display:block;min-height:0;padding:30px 5%;}
  .contact h2 {margin-bottom:18px;}
  .contact p {max-width:270px;margin-bottom:22px;}
  .contact .light {display:inline-flex;margin:0;}
  .contact>small {display:block;margin:22px 0 0;}
  .contact>small br {display:none;}
  .contact .divider {display:none;}
  .site-cta {display:block;}
  .related-grid .catalog-card {display:block;}
  .related-grid .catalog-photo img {height:auto;}
  .catalog-grid,.related-grid {grid-template-columns:minmax(0,1fr);}
  .site-cta>p {margin:18px 0 22px;}
  .technical-group summary small {max-width:70px;}
  .technical-group>summary {align-items:flex-start;}
  .footer-bottom {font-size:var(--type-note);}
  .site-footer {column-gap:24px;}
  .footer-links h3 {min-height:2.8em;}
}

/* Corporate typography and the shared brand-led footer. */
body {color:#102f47;}
p,li,dd,.page-lede,.large-copy {font-weight:400;}
.site-header nav>a,.mega-menu>summary,.menu-label {font-weight:700;}
.eyebrow,.home-reasons article>span {font-weight:600;}
.site-footer {display:block;background:#074985;color:#fff;border:0;padding:40px 5.4% 24px;}
.site-footer a {color:inherit;}
.site-footer a:hover {color:#fff;text-decoration:underline;text-underline-offset:4px;}
.site-footer a:focus-visible,.footer-group summary:focus-visible {outline:2px solid #fff;outline-offset:5px;}
.footer-brand-row {padding:0 0 30px;border-bottom:1px solid #ffffff40;}
.footer-brand-row .wordmark {display:inline-flex;margin:0;color:#fff;}
.footer-brand-row .wordmark>span {font:400 40px/1 Georgia,'Times New Roman',serif;letter-spacing:4px;}
.footer-brand-row .wordmark small {font:400 9px/1.5 var(--site-sans);letter-spacing:6px;}
.footer-directory {display:grid;position:static;margin:0;background:transparent;z-index:auto;grid-template-columns:.9fr 1.1fr 1.25fr 1.05fr 1fr 1.5fr;gap:28px;padding:30px 0 32px;}
.footer-group,.footer-connect {min-width:0;margin:0;}
.footer-group>summary,.footer-connect h2 {font:700 16px/1.4 var(--site-sans);letter-spacing:0;list-style:none;margin:0 0 15px;color:#fff;}
.footer-group>summary {cursor:default;}
.footer-group>summary::-webkit-details-marker {display:none;}
.footer-group-links {display:flex;flex-direction:column;gap:9px;}
.footer-group-links a {font:400 14px/1.5 var(--site-sans);color:#f1f6fc;}
.site-footer .footer-contacts {display:block;margin:0;}
.site-footer .footer-contacts dt {font:400 12px/1.4 var(--site-sans);color:#bdcee2;margin:13px 0 2px;}
.site-footer .footer-contacts dt:first-child {margin-top:0;}
.site-footer .footer-contacts dd {font:400 14px/1.5 var(--site-sans);margin:0;color:#fff;}
.site-footer .footer-contacts a {overflow-wrap:anywhere;}
.footer-corporate {display:flex;justify-content:space-between;gap:35px;padding:27px 0;border-top:1px solid #ffffff40;}
.site-footer .footer-company-name {font:700 20px/1.4 var(--site-sans);letter-spacing:0;margin:0 0 8px;color:#fff;}
.site-footer .footer-company-description {font:400 14px/1.6 var(--site-sans);margin:0;color:#d5e2f0;}
.site-footer .footer-address {font:400 14px/1.6 var(--site-sans);margin:0;flex-shrink:0;color:#eef4fb;}
.site-footer .footer-bottom {display:flex;align-items:center;flex-wrap:wrap;gap:18px 30px;border-top:1px solid #ffffff40;padding:20px 0 0;margin:0;color:#e5edf7;font:400 12px/1.5 var(--site-sans);}
.footer-locale {display:inline-flex;align-items:center;gap:10px;font-size:14px;}
.footer-locale svg {width:22px;height:22px;}
.site-footer .footer-legal-links {display:flex;flex-wrap:wrap;gap:0;margin:0 0 0 auto;}
.footer-legal-links a+a {border-left:1px solid #ffffff55;margin-left:12px;padding-left:12px;}
@media(min-width:761px) and (max-width:1100px) {
 .footer-directory {grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;}
 .footer-corporate {display:block;}
 .site-footer .footer-address {margin-top:18px;}
}
@media(max-width:760px) {
 .site-footer {padding:30px 5% 24px;}
 .footer-brand-row {padding-bottom:24px;}
 .footer-brand-row .wordmark>span {font-size:34px;}
 .footer-directory {display:block;padding:0;}
 .footer-group {border-bottom:1px solid #ffffff40;}
 .footer-group>summary {display:flex;justify-content:space-between;align-items:center;cursor:pointer;min-height:57px;margin:0;}
 .footer-group>summary:after {content:'+';font:400 25px/1 var(--site-sans);}
 .footer-group[open]>summary:after {content:'−';}
 .footer-group-links {padding:0 0 20px;gap:0;}
 .footer-group-links a {padding:9px 0;}
 .footer-connect {padding:22px 0 25px;}
 .footer-connect h2 {margin-bottom:17px;}
 .site-footer .footer-contacts {display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px 8px;align-items:baseline;}
 .site-footer .footer-contacts dt {margin:0;}
 .footer-corporate {display:block;padding:23px 0;}
 .site-footer .footer-company-name {font-size:18px;}
 .site-footer .footer-address {margin-top:16px;}
 .site-footer .footer-bottom {display:flex;flex-direction:column;align-items:flex-start;gap:16px;}
 .site-footer .footer-legal-links {margin:0;}
}

/* Original brand colors, with no grayscale or blend-based recoloring. */
.logo-cell img {filter:none;mix-blend-mode:normal;opacity:1;}
