/* V9 content pass: make the material inside each route easier to scan and use. */
body.ch9-ui :is(.ch-ui-home,.ch-ui-products,.ch-ui-popular,.ch-ui-landing,.ch-ui-about,.ch-ui-contact-v3,.ch4-overview) a:focus-visible,
body.ch9-ui :is(.ch-ui-home,.ch-ui-products,.ch-ui-popular,.ch-ui-landing,.ch-ui-about,.ch-ui-contact-v3,.ch4-overview) button:focus-visible,
body.ch9-ui .ch4-ready a:focus-visible {
  outline:2px solid #075c83;
  outline-offset:3px;
}

/* Home: the examples read as an actual index rather than six equal cards. */
body.ch9-ui .ch-ui-home .ch-ui-part-grid { counter-reset:ch9-part; }
body.ch9-ui .ch-ui-home .ch-ui-part-card {
  counter-increment:ch9-part;
  position:relative;
  min-height:102px;
  padding:20px 42px 19px 58px;
}
body.ch9-ui .ch-ui-home .ch-ui-part-card:before {
  content:counter(ch9-part,decimal-leading-zero);
  position:absolute;
  top:22px;
  left:19px;
  color:#789099;
  font:600 11px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;
}
body.ch9-ui .ch-ui-home .ch-ui-part-card > span {
  margin-bottom:8px;
  color:#55707d;
  font-size:12px;
}
body.ch9-ui .ch-ui-home .ch-ui-part-card strong {
  color:#122f3d;
  font-size:16px;
  line-height:1.3;
  overflow-wrap:anywhere;
}
body.ch9-ui .ch-ui-home .ch-ui-part-card small { margin-top:9px; color:#1b6482; font-size:11px; }
body.ch9-ui .ch-ui-home .ch-ui-part-card:hover,
body.ch9-ui .ch-ui-home .ch-ui-part-card:focus-visible { background:#e8f0ef; }
body.ch9-ui .ch-ui-home .ch-ui-brand-grid { background:#fff; border-left:1px solid var(--ch9-rule); }
body.ch9-ui .ch-ui-home .ch-ui-brand { position:relative; padding:22px 18px 20px; }
body.ch9-ui .ch-ui-home .ch-ui-brand-mark { margin-bottom:15px; }
body.ch9-ui .ch-ui-home .ch-ui-brand strong { margin-bottom:3px; font-size:15px; }
body.ch9-ui .ch-ui-home .ch-ui-brand small { color:#677c85; }
body.ch9-ui .ch-ui-home .ch-ui-services .ch-ui-section-heading { margin-bottom:24px; }
body.ch9-ui .ch-ui-home .ch-ui-service-grid > div { padding:25px 23px 20px; }
body.ch9-ui .ch-ui-home .ch-ui-service-num {
  display:block;
  margin-bottom:26px;
  color:#547985;
  font:600 12px ui-monospace,SFMono-Regular,Consolas,monospace;
}
body.ch9-ui .ch-ui-home .ch-ui-service-grid h3 { color:#173946; font-size:20px; }
body.ch9-ui .ch-ui-home .ch-ui-service-grid p { max-width:300px; color:#58717b; line-height:1.55; }

/* Products: a useful manufacturer directory, with the volume visible. */
body.ch9-ui .ch-ui-products-search {
  display:grid;
  grid-template-columns:minmax(170px,.28fr) minmax(0,.72fr);
  align-items:center;
  gap:20px;
  margin-bottom:39px;
  padding:20px 25px;
}
body.ch9-ui .ch-ui-products-search > label {
  margin:0;
  color:#1b4050;
  font-size:16px;
  font-weight:750;
  line-height:1.3;
}
body.ch9-ui .ch-ui-products-search .ch-ui-search-row { margin:0; }
body.ch9-ui .ch-ui-products-search .ch-ui-search-row {
  display:flex;
  align-items:stretch;
  width:100%;
  min-width:0;
  padding:4px;
  border:1px solid #aebec1;
  background:#fff;
}
body.ch9-ui .ch-ui-products-search .ch-ui-search-row input {
  flex:1;
  min-width:0;
  border:0;
  box-shadow:none;
  background:transparent;
}
body.ch9-ui .ch-ui-products .ch-ui-brand-grid { border-top:1px solid var(--ch9-rule); }
body.ch9-ui .ch-ui-products .ch-ui-brand {
  display:grid;
  grid-template-columns:50px minmax(0,1fr) auto 28px;
  grid-template-rows:auto auto;
  align-items:center;
  gap:0 14px;
  min-height:92px;
  padding:17px 5px 17px 0;
}
body.ch9-ui .ch-ui-products .ch-ui-brand-mark { grid-column:1; grid-row:1/3; margin:0; }
body.ch9-ui .ch-ui-products .ch-ui-brand strong { grid-column:2; grid-row:1/3; font-size:17px; }
body.ch9-ui .ch-ui-products .ch-ui-brand small {
  grid-column:3;
  grid-row:1/3;
  color:#607883;
  font-size:12px;
  white-space:nowrap;
}
body.ch9-ui .ch-ui-products .ch-ui-brand-arrow { grid-column:4; grid-row:1/3; justify-self:end; color:#237185; }
body.ch9-ui .ch-ui-products .ch-ui-brand:hover,
body.ch9-ui .ch-ui-products .ch-ui-brand:focus-visible { background:#e8f0ee; }
body.ch9-ui .ch-ui-products .ch-ui-other { margin-top:48px; padding:28px 31px; }
body.ch9-ui .ch-ui-products .ch-ui-other h2 { margin-bottom:6px; font-size:25px; }
body.ch9-ui .ch-ui-products .ch-ui-other-links { gap:0; border-top:1px solid var(--ch9-rule); }
body.ch9-ui .ch-ui-products .ch-ui-other-links a {
  margin:0;
  padding:13px 20px 13px 0;
  border:0;
  border-bottom:1px solid var(--ch9-rule);
  border-radius:0;
  background:transparent;
  color:#195c79;
  text-decoration:none;
}

/* Finder: filters remain visible while scanning a long MPN result set. */
@media (min-width:761px) {
  body.ch9-ui .ch-ui-popular .ch-pp-tabs,
  body.ch9-ui .ch-ui-popular .ch-pp-tools { position:sticky; z-index:12; }
  body.ch9-ui .ch-ui-popular .ch-pp-tabs { top:0; }
  body.ch9-ui .ch-ui-popular .ch-pp-tools { top:48px; box-shadow:0 5px 10px rgba(25,51,59,.045); }
}
body.ch9-ui .ch-ui-popular .ch-pp-tab { min-height:48px; }
body.ch9-ui .ch-ui-popular-hero [hidden] { display:none !important; }
body.ch9-ui .ch-ui-popular .ch-pp-tab:focus-visible,
body.ch9-ui .ch-ui-popular .ch-pp-az-item:focus-visible { outline:2px solid #075c83; outline-offset:-2px; }
body.ch9-ui .ch-ui-popular .ch-pp-status {
  margin-top:18px;
  padding:0 0 15px;
  color:#2a5364;
  font-size:13px;
  font-weight:700;
}
body.ch9-ui .ch-ui-popular .ch-pp-item {
  min-height:72px;
  padding:16px 32px 14px 4px;
  border-bottom:1px solid var(--ch9-rule);
}
body.ch9-ui .ch-ui-popular .ch-pp-pn { color:#163846; font-size:14px; letter-spacing:-.015em; }
body.ch9-ui .ch-ui-popular .ch-pp-brand { margin-top:5px; color:#627a84; font-size:12px; }
body.ch9-ui .ch-ui-popular .ch-pp-item:after { top:21px; }
body.ch9-ui .ch-ui-popular .ch-pp-item:hover,
body.ch9-ui .ch-ui-popular .ch-pp-item:focus-visible { background:#eaf1ef; }
body.ch9-ui .ch-ui-popular-hero .ch-pp-search,
body.ch9-ui .ch-ui-popular-hero .ch-pp-search input,
body.ch9-ui .ch-ui-popular-hero .ch-pp-search button { box-sizing:border-box; min-width:0; }
body.ch9-ui .ch-ui-popular-hero .ch-pp-search input { flex:1 1 0; }
body.ch9-ui .ch-ui-popular-hero .ch-pp-search button { flex:0 0 112px; }

/* Brand and family pages: clearly divided catalog and buying context. */
body.ch9-ui .ch-ui-landing-catalog { padding-top:4px; }
body.ch9-ui .ch-ui-catalog-list { margin-top:20px; }
body.ch9-ui .ch-ui-catalog-list > p { color:#526d79; font-size:13px; }
body.ch9-ui .ch-ui-catalog-list li { position:relative; }
body.ch9-ui .ch-ui-catalog-list li a {
  display:flex;
  align-items:center;
  min-height:56px;
  padding:13px 25px 13px 5px;
  color:#183b4b !important;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
}
body.ch9-ui .ch-ui-catalog-list li a:after {
  content:'↗';
  position:absolute;
  right:6px;
  color:#5c8692;
  font-family:Arial,sans-serif;
  font-size:16px;
}
body.ch9-ui .ch-ui-catalog-list li a:hover,
body.ch9-ui .ch-ui-catalog-list li a:focus-visible { background:#e7f0ed; color:#075c83 !important; }
body.ch9-ui .ch-ui-catalog-list div a[href*="pg="] {
  min-width:36px;
  padding:8px 11px;
  border-color:#bfcfce;
  border-radius:2px;
  color:#1d607a;
}
body.ch9-ui .ch-ui-landing-guide { margin-top:60px; }
body.ch9-ui .ch-ui-landing-guide-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; border-top:1px solid var(--ch9-rule); }
body.ch9-ui .ch-ui-landing-guide-card {
  min-height:220px;
  padding:26px 30px;
  border:0;
  border-right:1px solid var(--ch9-rule);
  border-bottom:1px solid var(--ch9-rule);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.ch9-ui .ch-ui-landing-guide-card:nth-child(even) { border-right:0; }
body.ch9-ui .ch-ui-landing-guide-card h3 { margin:0 0 12px; color:#193a48; font-size:20px; }
body.ch9-ui .ch-ui-landing-guide-card p,
body.ch9-ui .ch-ui-landing-guide-card li { color:#536d78; font-size:13px; line-height:1.65; }
body.ch9-ui .ch-ui-landing-guide-card ul { margin:0; padding-left:18px; }

/* Product: existing facts are grouped into short, browsable sections. */
body.ch9-ui.ch4-product-v4 .entry-content.ch9-detail-ready {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:19px;
  align-items:start;
}
body.ch9-ui.ch4-product-v4 .entry-content.ch9-detail-ready > * { min-width:0; grid-column:1/-1; }
body.ch9-ui.ch4-product-v4 .entry-content.ch9-detail-ready > .ch4-overview { margin-bottom:5px; }
body.ch9-ui.ch4-product-v4 .entry-content.ch9-detail-ready > .ch9-product-section { grid-column:auto; }
body.ch9-ui.ch4-product-v4 .entry-content.ch9-detail-ready > :is(.ch9-product-specifications,.ch9-product-faq,.ch9-product-related) { grid-column:1/-1; }
body.ch9-ui.ch4-product-v4 .entry-content.ch9-detail-ready > :is(.ch9-product-sourcing,.ch9-product-quality) { grid-column:1/-1; min-height:0; }
body.ch9-ui.ch4-product-v4 .entry-content.ch9-detail-ready:has(> .ch9-product-applications) > .ch9-product-selection { grid-column:1/-1; }
body.ch9-ui .ch9-product-section {
  min-height:100%;
  padding:25px 27px 27px;
  border:1px solid var(--ch9-rule);
  border-top:2px solid #2a6379;
  background:#fff;
}
body.ch9-ui .ch9-product-section > h2 {
  scroll-margin-top:125px;
  margin:0 0 18px !important;
  padding-bottom:13px;
  border-bottom:1px solid var(--ch9-rule);
  color:#1b3c4a;
  font-size:clamp(22px,2vw,28px);
  line-height:1.2;
}
body.ch9-ui .ch9-product-section > :last-child { margin-bottom:0 !important; }
body.ch9-ui .ch9-product-section p,
body.ch9-ui .ch9-product-section li { color:#48626e; font-size:14px; line-height:1.65; }
body.ch9-ui .ch9-product-section ul { margin:0; padding-left:19px; }
body.ch9-ui .ch9-product-section li { margin-bottom:8px; }
body.ch9-ui .ch9-product-section li::marker { color:#24758b; }
body.ch9-ui .ch9-product-section a { color:#075c83; text-underline-offset:3px; }
body.ch9-ui .ch9-product-sourcing,
body.ch9-ui .ch9-product-quality {
  display:grid;
  grid-template-columns:minmax(160px,.25fr) minmax(0,.75fr);
  gap:20px;
  align-items:center;
  border-top-color:#9bb9bc;
  background:#f4f7f5;
}
body.ch9-ui :is(.ch9-product-sourcing,.ch9-product-quality) > h2 { margin:0 !important; padding:0; border:0; font-size:21px; }
body.ch9-ui :is(.ch9-product-sourcing,.ch9-product-quality) > p { margin:0 !important; }
body.ch9-ui .ch9-product-specifications table { width:100%; border:0; margin:0; }
body.ch9-ui .ch9-product-specifications tbody {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 25px;
}
body.ch9-ui .ch9-product-specifications tr {
  display:grid;
  grid-template-columns:minmax(115px,.73fr) minmax(0,1.27fr);
  border-bottom:1px solid var(--ch9-rule);
  background:transparent !important;
}
body.ch9-ui .ch9-product-specifications :is(td,th) {
  display:block;
  min-width:0;
  padding:12px 8px;
  border:0;
  color:#244656;
  font-size:12px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
body.ch9-ui .ch9-product-specifications :is(td,th):first-child { color:#5c747e; font-weight:700; }
body.ch9-ui .ch9-product-faq h3 { margin:20px 0 6px; color:#224656; font-size:16px; }
body.ch9-ui .ch9-product-faq h3:first-of-type { margin-top:0; }
body.ch9-ui .ch9-product-faq h3 + p { padding-bottom:15px; border-bottom:1px solid var(--ch9-rule); }
body.ch9-ui .ch9-product-related ul { display:flex; flex-wrap:wrap; gap:9px; padding:0; list-style:none; }
body.ch9-ui .ch9-product-related li { margin:0; padding:9px 13px; border:1px solid var(--ch9-rule); }
body.ch9-ui .ch4-subnav a { font-size:12px; }

/* About: photography and principles get an intentional editorial sequence. */
body.ch9-ui .ch-ui-about-principles { border-top:3px solid #1a4354; }
body.ch9-ui .ch-ui-about-principles-list p { padding:16px 0; }
body.ch9-ui .ch-ui-about-gallery-featured {
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);
  grid-template-rows:repeat(2,190px);
  gap:10px;
}
body.ch9-ui .ch-ui-about-gallery-featured img { width:100%; height:100%; object-fit:cover; border:1px solid var(--ch9-rule); }
body.ch9-ui .ch-ui-about-gallery-featured img:first-child { grid-row:1/3; }
body.ch9-ui .ch-ui-about-more { margin-top:14px; border-top:1px solid var(--ch9-rule); }
body.ch9-ui .ch-ui-about-more summary { padding:13px 0; color:#075c83; font-weight:700; }
body.ch9-ui .ch-ui-about-gallery-more { gap:10px; }
body.ch9-ui .ch-ui-about-company { border-top:3px solid #1a4354; }
body.ch9-ui .ch-ui-about-company a { color:#075c83; }

/* Contact/RFQ: treat the form as a precise intake, not a generic contact widget. */
body.ch9-ui .ch-ui-contact-grid { align-items:start; }
body.ch9-ui .ch-ui-contact-v3 .ch-ui-contact-form { border-top:3px solid #075c83; }
body.ch9-ui .ch-ui-contact-form h2 { margin:8px 0 5px; }
body.ch9-ui .ch-ui-contact-form .wpcf7-form { gap:0 15px; }
body.ch9-ui .ch-ui-contact-form .wpcf7-form label { display:block; margin-bottom:6px; color:#2c4b58; font-weight:700; }
body.ch9-ui .ch-ui-contact-form .wpcf7-form input:not([type="checkbox"]):not([type="submit"]):not([type="hidden"]),
body.ch9-ui .ch-ui-contact-form .wpcf7-form textarea {
  width:100%;
  min-height:48px;
  border:1px solid #aebec1;
  border-radius:2px;
  background:#fff;
  color:#153541;
  font-size:14px;
}
body.ch9-ui .ch-ui-contact-form .wpcf7-form textarea { min-height:135px; resize:vertical; }
body.ch9-ui .ch-ui-contact-form .wpcf7-form input[type="file"] {
  height:auto !important;
  padding:13px;
  border:1px dashed #98afb5 !important;
  background:#f4f7f5 !important;
}
body.ch9-ui .ch-ui-contact-form .wpcf7-form input[type="checkbox"] { accent-color:#075c83; }
body.ch9-ui .ch-ui-contact-form .wpcf7-form input[type="submit"] { min-width:190px; font-size:14px; }
body.ch9-ui .ch-ui-contact-form .wpcf7-not-valid-tip,
body.ch9-ui .ch-ui-contact-form .wpcf7-response-output { font-size:12px; line-height:1.5; }
body.ch9-ui .ch-ui-contact-aside-card { border-top:1px solid var(--ch9-rule); }
body.ch9-ui .ch-ui-contact-company { border-top:1px solid var(--ch9-rule); }

@media (max-width:900px) {
  body.ch9-ui .ch-ui-products-search { grid-template-columns:1fr; gap:11px; }
  body.ch9-ui .ch-ui-landing-guide-card { padding:23px 20px; }
  body.ch9-ui .ch9-product-specifications tbody { grid-template-columns:1fr; }
  body.ch9-ui .ch-ui-contact-grid { grid-template-columns:1fr; }
  body.ch9-ui .ch-ui-contact-v3 .ch-ui-contact-aside { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  body.ch9-ui .ch-ui-home .ch-ui-part-card { min-height:91px; padding:18px 33px 16px 54px; }
  body.ch9-ui .ch-ui-home .ch-ui-part-card:before { left:17px; top:20px; }
  body.ch9-ui .ch-ui-home .ch-ui-brand { padding:16px; }
  body.ch9-ui .ch-ui-home .ch-ui-service-grid > div { padding:19px 0; }
  body.ch9-ui .ch-ui-products .ch-ui-brand { grid-template-columns:48px minmax(0,1fr) 25px; }
  body.ch9-ui .ch-ui-products .ch-ui-brand strong { grid-column:2; grid-row:1; align-self:end; font-size:16px; }
  body.ch9-ui .ch-ui-products .ch-ui-brand small { grid-column:2; grid-row:2; align-self:start; white-space:normal; }
  body.ch9-ui .ch-ui-products .ch-ui-brand-arrow { grid-column:3; grid-row:1/3; }
  body.ch9-ui .ch-ui-popular .ch-pp-tabs,
  body.ch9-ui .ch-ui-popular .ch-pp-tools { position:static; }
  body.ch9-ui .ch-ui-popular-hero .ch-pp-search button { flex-basis:90px; }
  body.ch9-ui .ch-ui-landing-guide-grid { grid-template-columns:1fr; }
  body.ch9-ui .ch-ui-landing-guide-card { min-height:0; border-right:0; }
  body.ch9-ui.ch4-product-v4 .entry-content.ch9-detail-ready { grid-template-columns:1fr; gap:13px; }
  body.ch9-ui.ch4-product-v4 .entry-content.ch9-detail-ready > .ch9-product-section { grid-column:1; }
  body.ch9-ui .ch9-product-section { padding:19px 17px 21px; }
  body.ch9-ui .ch9-product-section > h2 { scroll-margin-top:85px; font-size:22px; }
  body.ch9-ui .ch9-product-specifications tr { grid-template-columns:minmax(113px,.72fr) minmax(0,1.28fr); }
  body.ch9-ui .ch9-product-specifications :is(td,th):first-child { font-size:11px; }
  body.ch9-ui .ch9-product-sourcing,
  body.ch9-ui .ch9-product-quality { grid-template-columns:1fr; gap:8px; }
  body.ch9-ui .ch-ui-about-gallery-featured { grid-template-rows:repeat(2,120px); }
  body.ch9-ui .ch-ui-contact-form .wpcf7-form input[type="submit"] { width:100%; }
  body.ch9-ui .ch-ui-contact-v3 .ch-ui-contact-aside { grid-template-columns:1fr; }
}
@media (max-width:480px) {
  body.ch9-ui .ch-ui-products-search .ch-ui-search-row { display:block; }
  body.ch9-ui .ch-ui-products-search .ch-ui-search-row input { width:100%; }
  body.ch9-ui .ch-ui-products-search .ch-ui-search-row button { width:100%; }
}
@media (max-width:360px) {
  body.ch9-ui .ch-ui-popular-hero .ch-pp-search button { flex-basis:78px; padding-inline:8px; }
  body.ch9-ui .ch9-product-specifications tr { grid-template-columns:1fr; }
  body.ch9-ui .ch9-product-specifications :is(td,th) { padding:6px 5px; }
  body.ch9-ui .ch9-product-specifications :is(td,th):first-child { padding-bottom:0; }
}
