/* Research Library reference layer — presentation only. It leaves records, links,
   filters and SEO output untouched while presenting real production content cleanly. */
body:has(main.research-library-page) {
  --pb-navy:#031a43; --pb-ink:#102b59; --pb-blue:#0959ed; --pb-pale:#f2f7ff;
  --pb-line:#d8e2f1; --pb-copy:#566784; --pb-serif:Italiana,Iowan Old Style,Georgia,serif;
  background:#fff; color:var(--pb-ink);
}
body:has(main.research-library-page) .site-header { position:relative; z-index:8; background:#fff; border-bottom:1px solid #dce5f2; }
body:has(main.research-library-page) .site-header a, body:has(main.research-library-page) .site-header button { color:#071d45; }
body:has(main.research-library-page) .site-header .menu-item>a:hover, body:has(main.research-library-page) .site-header .menu-item.current-menu-item>a { color:var(--pb-blue); }
/* The approved library master uses a continuous navy shell above the hero. */
body:has(main.research-library-page) .site-header {
  background: var(--pb-navy) !important;
  border-bottom-color: rgba(166, 196, 244, .2) !important;
}
body:has(main.research-library-page) .site-header .brand-name,
body:has(main.research-library-page) .site-header .main-nav,
body:has(main.research-library-page) .site-header .main-nav > a,
body:has(main.research-library-page) .site-header .language-switcher,
body:has(main.research-library-page) .site-header .language-switcher-label {
  color: #fff !important;
}
body:has(main.research-library-page) .site-header .main-nav > a:hover,
body:has(main.research-library-page) .site-header .main-nav > a:focus-visible {
  color: #9fc0ff !important;
}
body:has(main.research-library-page) .site-header .language-switcher {
  border-color: rgba(187, 211, 255, .48) !important;
  background: rgba(0, 14, 43, .32) !important;
}
body:has(main.research-library-page) .site-header .language-switcher select {
  border-color: rgba(187, 211, 255, .48) !important;
  background: #031a43 !important;
  color: #fff !important;
}
body:has(main.research-library-page) .site-menu-open .site-header .main-nav {
  background: var(--pb-navy) !important;
}

body:has(main.research-library-page) .research-support-hero {
  position:relative; min-height:364px; overflow:hidden; padding:clamp(54px,7vw,96px) 0 clamp(48px,6vw,78px); color:#fff;
  background:#061a3d url('/wp-content/uploads/2026/07/lab-vials2.webp') center/cover no-repeat;
}
body:has(main.research-library-page) .research-support-hero::after { position:absolute; inset:0; content:""; pointer-events:none; opacity:.2; background-image:linear-gradient(30deg,transparent 47%,rgba(78,141,255,.32) 48% 52%,transparent 53%),linear-gradient(150deg,transparent 47%,rgba(78,141,255,.22) 48% 52%,transparent 53%); background-size:64px 56px; mask-image:linear-gradient(90deg,transparent 12%,#000 74%,#000); }
body:has(main.research-library-page) .research-support-hero-grid, body:has(main.research-library-page) .research-support-guides>.content-wrap, body:has(main.research-library-page) .research-support-action-band>.content-wrap, body:has(main.research-library-page) .research-support-faq>.content-wrap { width:min(1280px,calc(100% - 96px)); margin-inline:auto; }
body:has(main.research-library-page) .research-support-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) minmax(250px,310px); gap:clamp(34px,8vw,150px); align-items:end; }
body:has(main.research-library-page) .research-support-intro .eyebrow, body:has(main.research-library-page) .research-support-section-head .eyebrow, body:has(main.research-library-page) .research-library-document-head .eyebrow { margin:0 0 12px; color:#7fadff; font-size:11px; font-weight:800; letter-spacing:.14em; }
body:has(main.research-library-page) .research-support-intro h1 { max-width:720px; margin:0; color:#fff; font-family:var(--pb-serif); font-size:clamp(46px,5.2vw,74px); font-weight:400; letter-spacing:-.035em; line-height:.99; }
body:has(main.research-library-page) .research-support-lead { max-width:600px; margin:22px 0 0; color:rgba(240,247,255,.9); font-size:17px; line-height:1.62; }
body:has(main.research-library-page) .research-support-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
body:has(main.research-library-page) .research-support-actions .button, body:has(main.research-library-page) .research-support-quote { min-height:46px; padding:0 19px; border:1px solid rgba(255,255,255,.64); border-radius:3px; background:transparent; color:#fff; font:700 13px/44px inherit; text-decoration:none; }
body:has(main.research-library-page) .research-support-actions .button { border-color:var(--pb-blue); background:var(--pb-blue); }
body:has(main.research-library-page) .research-support-actions .button:hover { background:#0748c4; }
body:has(main.research-library-page) .research-support-quote:hover { background:rgba(255,255,255,.1); }
body:has(main.research-library-page) .research-support-boundary { margin:21px 0 0; color:#d9e6ff; font-size:12px; font-weight:700; }
body:has(main.research-library-page) .research-support-boundary::before { content:""; display:inline-block; width:7px; height:7px; margin:0 8px 1px 0; border-radius:50%; background:#f7c948; }
body:has(main.research-library-page) .research-support-hero-controls { display:flex; gap:10px; width:min(100%,520px); margin-top:22px; }
body:has(main.research-library-page) .research-support-hero-controls input,
body:has(main.research-library-page) .research-support-hero-controls select { height:43px; box-sizing:border-box; border:1px solid rgba(190,211,248,.62); border-radius:3px; background:rgba(2,19,52,.35); color:#fff; font:500 13px/41px inherit; }
body:has(main.research-library-page) .research-support-hero-controls input { flex:1 1 auto; min-width:0; padding:0 13px; }
body:has(main.research-library-page) .research-support-hero-controls input::placeholder { color:rgba(222,234,255,.72); }
body:has(main.research-library-page) .research-support-hero-controls select { flex:0 0 145px; padding:0 10px; }
body:has(main.research-library-page) .research-support-hero-controls input:focus,
body:has(main.research-library-page) .research-support-hero-controls select:focus { outline:3px solid rgba(157,193,255,.34); border-color:#b5d0ff; }
body:has(main.research-library-page) .research-support-hot-topics { display:flex; flex-wrap:wrap; gap:8px; margin-top:15px; }
body:has(main.research-library-page) .research-support-hot-topics::before { content:"POPULAR TOPICS"; flex:0 0 100%; color:#9fc0ff; font-size:10px; font-weight:800; letter-spacing:.1em; }
body:has(main.research-library-page) .research-support-hot-topics span { padding:6px 10px; border:1px solid rgba(190,211,248,.52); border-radius:99px; color:#f0f5ff; font-size:11px; line-height:1; }
body:has(main.research-library-page) .research-support-brief { border:1px solid rgba(167,195,246,.38); background:rgba(4,26,67,.45); backdrop-filter:blur(8px); }
body:has(main.research-library-page) .research-support-brief-head { display:flex; justify-content:space-between; gap:12px; padding:17px 18px; border-bottom:1px solid rgba(167,195,246,.26); }
body:has(main.research-library-page) .research-support-brief-head p { margin:0; color:#9fc0ff; font-size:10px; font-weight:800; letter-spacing:.12em; }
body:has(main.research-library-page) .research-support-brief-head span { color:#fff; font-size:11px; }
body:has(main.research-library-page) .research-support-brief .status-dot { display:inline-block; width:6px; height:6px; margin-right:5px; border-radius:50%; background:#f7c948; }
body:has(main.research-library-page) .research-support-brief ul { margin:0; padding:0; list-style:none; }
body:has(main.research-library-page) .research-support-brief li { display:grid; grid-template-columns:29px 1fr; gap:8px; padding:15px 18px; border-bottom:1px solid rgba(167,195,246,.18); }
body:has(main.research-library-page) .research-support-brief li>span { color:#74a2ff; font-size:11px; font-weight:800; }
body:has(main.research-library-page) .research-support-brief strong, body:has(main.research-library-page) .research-support-brief small { display:block; }
body:has(main.research-library-page) .research-support-brief strong { color:#fff; font-size:13px; }
body:has(main.research-library-page) .research-support-brief small { margin-top:4px; color:#c2d3ef; font-size:11px; line-height:1.45; }
body:has(main.research-library-page) .research-support-brief footer { display:flex; align-items:baseline; gap:7px; padding:16px 18px; color:#b9ccec; font-size:12px; }
body:has(main.research-library-page) .research-support-brief footer b { color:#fff; font-size:25px; }

body:has(main.research-library-page) .research-support-guides { padding:clamp(54px,7vw,96px) 0 80px; background:#fff; }
body:has(main.research-library-page) .research-support-section-head { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:28px; }
body:has(main.research-library-page) .research-support-section-head h2, body:has(main.research-library-page) .research-library-document-head h3 { margin:0; color:var(--pb-ink); font-family:var(--pb-serif); font-size:clamp(34px,3.3vw,52px); font-weight:400; letter-spacing:-.028em; line-height:1; }
body:has(main.research-library-page) .research-support-section-head .eyebrow { color:var(--pb-blue); }
body:has(main.research-library-page) .research-support-controls { display:flex; gap:10px; min-width:min(100%,430px); }
body:has(main.research-library-page) .research-support-controls input, body:has(main.research-library-page) .research-support-controls select { height:44px; border:1px solid var(--pb-line); border-radius:3px; background:#fff; color:var(--pb-ink); font:500 13px inherit; }
body:has(main.research-library-page) .research-support-controls input { width:100%; padding:0 14px; }
body:has(main.research-library-page) .research-support-controls select { width:145px; padding:0 10px; }
body:has(main.research-library-page) .research-support-controls input:focus, body:has(main.research-library-page) .research-support-controls select:focus { outline:3px solid rgba(9,89,237,.16); border-color:var(--pb-blue); }

body:has(main.research-library-page) .research-library-featured { margin-bottom:48px; }
body:has(main.research-library-page) .research-library-featured-grid { display:grid; grid-template-columns:1.3fr .85fr .85fr; gap:18px; }
body:has(main.research-library-page) .research-library-feature-card { position:relative; min-width:0; border:1px solid var(--pb-line); border-radius:5px; overflow:hidden; background:#fff; transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
body:has(main.research-library-page) .research-library-feature-card:hover { transform:translateY(-3px); border-color:#aac5f7; box-shadow:0 16px 35px rgba(13,52,111,.12); }
body:has(main.research-library-page) .research-library-feature-card .research-card, body:has(main.research-library-page) .research-library-feature-card .research-card-link { display:flex; width:100%; height:100%; min-height:255px; box-sizing:border-box; color:var(--pb-ink); text-decoration:none; }
body:has(main.research-library-page) .research-library-feature-card .research-card-link { flex:1 1 auto; flex-direction:column; background:transparent!important; }
body:has(main.research-library-page) .research-library-feature-card .research-card-art { position:relative; height:90px; padding:16px; overflow:hidden; background:#e8f0ff center/cover no-repeat; }
body:has(main.research-library-page) .research-library-feature-card .research-card-art::after { position:absolute; inset:0; content:""; background:linear-gradient(135deg,rgba(3,26,67,.65),rgba(9,89,237,.1)); }
body:has(main.research-library-page) .research-library-feature-card .research-card-art span { position:relative; z-index:1; color:#fff; font-size:10px; font-weight:800; letter-spacing:.1em; }
body:has(main.research-library-page) .research-library-feature-card .research-card-copy { display:flex; flex:1; flex-direction:column; padding:19px; }
body:has(main.research-library-page) .research-library-feature-card .research-card-copy>p { margin:0 0 10px; color:var(--pb-blue); font-size:11px; font-weight:800; }
body:has(main.research-library-page) .research-library-feature-card .research-card-copy h3 { margin:0; color:var(--pb-ink); font-family:var(--pb-serif); font-size:27px; font-weight:400; letter-spacing:-.02em; line-height:1.08; }
body:has(main.research-library-page) .research-library-feature-card .research-card-copy>span { display:-webkit-box; margin-top:12px; overflow:hidden; color:var(--pb-copy); font-size:13px; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
body:has(main.research-library-page) .research-library-feature-card .research-card-copy b { margin-top:auto; padding-top:16px; color:var(--pb-blue); font-size:12px; }
body:has(main.research-library-page) .research-library-feature-card.is-lead { border-color:#071f4f; background:var(--pb-navy); }
body:has(main.research-library-page) .research-library-feature-card.is-lead .research-card-art { height:100%; min-height:255px; background-color:#06275f; }
body:has(main.research-library-page) .research-library-feature-card.is-lead .research-card-art::after { background:linear-gradient(90deg,rgba(2,20,53,.96),rgba(2,29,75,.7)); }
body:has(main.research-library-page) .research-library-feature-card.is-lead .research-card-copy { position:absolute; z-index:1; max-width:75%; padding:29px; }
body:has(main.research-library-page) .research-library-feature-card.is-lead .research-card-copy>p, body:has(main.research-library-page) .research-library-feature-card.is-lead .research-card-copy h3, body:has(main.research-library-page) .research-library-feature-card.is-lead .research-card-copy>span { color:#fff; }
body:has(main.research-library-page) .research-library-feature-card.is-lead .research-card-copy b { color:#9fc0ff; }

body:has(main.research-library-page) .research-library-documents { border:1px solid var(--pb-line); border-radius:5px; overflow:hidden; }
body:has(main.research-library-page) .research-library-document-head { display:flex; align-items:end; justify-content:space-between; gap:16px; padding:26px 28px 22px; background:#fff; }
body:has(main.research-library-page) .research-library-document-head .eyebrow { color:var(--pb-blue); }
body:has(main.research-library-page) .research-library-document-head h3 { font-size:31px; }
body:has(main.research-library-page) .research-library-document-head>span { color:var(--pb-copy); font-size:13px; font-weight:700; }
body:has(main.research-library-page) .research-library-document-labels { display:grid; grid-template-columns:minmax(230px,1.25fr) 150px minmax(220px,1fr) 95px; gap:18px; padding:12px 28px; border-top:1px solid var(--pb-line); border-bottom:1px solid var(--pb-line); background:#f7faff; color:#65738b; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
body:has(main.research-library-page) .research-library-document+.research-library-document { border-top:1px solid #e6edf7; }
body:has(main.research-library-page) .research-library-document { background:#fff; transition:background .16s ease; }
body:has(main.research-library-page) .research-library-document:hover { background:#f9fbff; }
body:has(main.research-library-page) .research-library-document .research-card-link { display:grid; grid-template-columns:minmax(230px,1.25fr) 150px minmax(220px,1fr) 95px; gap:18px; align-items:center; min-height:86px; padding:14px 28px; color:var(--pb-ink); text-decoration:none; }
/* The legacy card layer assigns a dark paper background to every
   .research-card-link.  Document rows are the light, scannable table in the
   approved library composition, so reset that inherited surface explicitly. */
body:has(main.research-library-page) .research-library-document .research-card-link {
  border: 0;
  border-radius: 0;
  background: #fff !important;
  color: var(--pb-ink) !important;
  box-shadow: none;
}
body:has(main.research-library-page) .research-library-document .research-card-link:hover,
body:has(main.research-library-page) .research-library-document .research-card-link:focus-visible {
  background: #f8fbff !important;
  box-shadow: none;
  transform: none;
}
body:has(main.research-library-page) .research-library-document .research-card-art { display:none; }
body:has(main.research-library-page) .research-library-document .research-card-copy { display:contents; }
body:has(main.research-library-page) .research-library-document .research-card-copy>p { grid-column:2; grid-row:1; margin:0; justify-self:start; border-radius:99px; background:#eef4ff; color:#28518e; padding:5px 9px; font-size:10px; font-weight:700; line-height:1.1; }
body:has(main.research-library-page) .research-library-document .research-card-copy h3 { grid-column:1; grid-row:1; display:flex; align-items:flex-start; gap:10px; margin:0; padding-left:0; color:var(--pb-ink); font-size:15px; font-weight:750; line-height:1.35; }
body:has(main.research-library-page) .research-card-document-icon { display:none; }
body:has(main.research-library-page) .research-library-document .research-card-document-icon { display:inline-block; width:19px; height:19px; flex:0 0 19px; margin-top:1px; color:var(--pb-blue); }
body:has(main.research-library-page) .research-library-document .research-card-copy>span { grid-column:3; grid-row:1; display:-webkit-box; overflow:hidden; color:var(--pb-copy); font-size:12px; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
body:has(main.research-library-page) .research-library-document .research-card-copy b { grid-column:4; grid-row:1; color:var(--pb-blue); font-size:12px; white-space:nowrap; }
body:has(main.research-library-page) .research-library-document .research-card-copy h3,
body:has(main.research-library-page) .research-library-document .research-card-copy > span,
body:has(main.research-library-page) .research-library-document .research-card-copy b { color: var(--pb-ink); }
body:has(main.research-library-page) .research-library-document .research-card-copy > span { color: var(--pb-copy); }
body:has(main.research-library-page) .research-library-document .research-card-copy b { color: var(--pb-blue); }
body:has(main.research-library-page) [data-guide-card][hidden], body:has(main.research-library-page) [data-guide-section].is-empty { display:none!important; }
body:has(main.research-library-page) .research-empty { margin:28px 0 0; text-align:center; color:var(--pb-copy); }

body:has(main.research-library-page) .research-support-action-band { padding:0 0 72px; background:#fff; }
body:has(main.research-library-page) .research-support-action-grid { display:grid; grid-template-columns:1fr minmax(220px,.65fr) auto; gap:28px; align-items:center; padding:30px; border-radius:5px; background:linear-gradient(110deg,#f4f8ff,#eaf2ff); }
body:has(main.research-library-page) .research-support-action-grid .eyebrow { margin:0 0 8px; color:var(--pb-blue); font-size:10px; font-weight:800; letter-spacing:.1em; }
body:has(main.research-library-page) .research-support-action-grid h2 { margin:0; color:var(--pb-ink); font-family:var(--pb-serif); font-size:33px; font-weight:400; }
body:has(main.research-library-page) .research-support-action-grid>p { margin:0; color:var(--pb-copy); font-size:14px; line-height:1.5; }
body:has(main.research-library-page) .research-support-band-actions { display:flex; gap:10px; }
body:has(main.research-library-page) .research-support-band-actions>* {
  min-height:42px;
  padding:0 14px;
  border:1px solid var(--pb-blue);
  border-radius:3px;
  background:#fff;
  color:var(--pb-blue);
  font:700 12px/1.2 inherit;
  text-decoration:none;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
body:has(main.research-library-page) .research-support-band-actions button { background:var(--pb-blue); color:#fff; }
body:has(main.research-library-page) .research-support-faq { padding:70px 0 82px; border-top:1px solid #e5edf7; background:#fff; }
body:has(main.research-library-page) .research-support-faq-grid { display:grid; grid-template-columns:minmax(240px,.68fr) minmax(0,1.32fr); gap:clamp(45px,9vw,130px); }
body:has(main.research-library-page) .research-support-faq header .eyebrow { color:var(--pb-blue); font-size:10px; font-weight:800; letter-spacing:.12em; }
body:has(main.research-library-page) .research-support-faq h2 { margin:10px 0; color:var(--pb-ink); font-family:var(--pb-serif); font-size:43px; font-weight:400; line-height:1; }
body:has(main.research-library-page) .research-support-faq header>p:last-child { color:var(--pb-copy); line-height:1.6; }
body:has(main.research-library-page) .research-faq-item { border-top:1px solid var(--pb-line); }
body:has(main.research-library-page) .research-faq-item:last-child { border-bottom:1px solid var(--pb-line); }
body:has(main.research-library-page) .research-faq-item button { display:flex; width:100%; justify-content:space-between; gap:18px; padding:20px 0; border:0; background:transparent; color:var(--pb-ink); font:700 15px/1.45 inherit; text-align:left; }
body:has(main.research-library-page) .research-faq-item button .faq-toggle-icon { width:21px; height:21px; flex:0 0 21px; color:var(--pb-blue); transition:transform .2s ease; }
body:has(main.research-library-page) .research-faq-item button[aria-expanded="true"] .faq-toggle-icon { transform:rotate(45deg); }
body:has(main.research-library-page) .research-faq-answer { padding:0 0 20px; color:var(--pb-copy); font-size:14px; line-height:1.62; }

@media (max-width:900px) {
  body:has(main.research-library-page) .research-support-hero-grid { grid-template-columns:1fr; }
  body:has(main.research-library-page) .research-support-brief { display:none; }
  body:has(main.research-library-page) .research-library-featured-grid { grid-template-columns:1fr 1fr; }
  body:has(main.research-library-page) .research-library-feature-card.is-lead { grid-column:1/-1; }
  body:has(main.research-library-page) .research-library-document-labels { display:none; }
  body:has(main.research-library-page) .research-library-document .research-card-link { grid-template-columns:1fr 135px 1.1fr 88px; padding-inline:18px; }
  body:has(main.research-library-page) .research-support-action-grid { grid-template-columns:1fr 1fr; }
  body:has(main.research-library-page) .research-support-band-actions { grid-column:1/-1; }
}
@media (max-width:660px) {
  body:has(main.research-library-page) .research-support-hero-grid, body:has(main.research-library-page) .research-support-guides>.content-wrap, body:has(main.research-library-page) .research-support-action-band>.content-wrap, body:has(main.research-library-page) .research-support-faq>.content-wrap { width:min(100% - 38px,1280px); }
  body:has(main.research-library-page) .research-support-hero { min-height:0; padding-block:48px; }
  body:has(main.research-library-page) .research-support-intro h1 { font-size:45px; }
  body:has(main.research-library-page) .research-support-section-head { display:block; }
  body:has(main.research-library-page) .research-support-controls { margin-top:22px; }
  body:has(main.research-library-page) .research-library-featured-grid { grid-template-columns:1fr; }
  body:has(main.research-library-page) .research-library-feature-card.is-lead { grid-column:auto; }
  body:has(main.research-library-page) .research-library-feature-card.is-lead .research-card-copy { max-width:88%; }
  body:has(main.research-library-page) .research-library-document-head { align-items:start; padding:21px 18px; }
  body:has(main.research-library-page) .research-library-document-head h3 { font-size:27px; }
  body:has(main.research-library-page) .research-library-document .research-card-link { display:grid; grid-template-columns:1fr auto; gap:8px 14px; min-height:0; padding:18px; }
  body:has(main.research-library-page) .research-library-document .research-card-copy h3 { grid-column:1/-1; grid-row:auto; }
  body:has(main.research-library-page) .research-library-document .research-card-copy>p { grid-column:1; grid-row:auto; }
  body:has(main.research-library-page) .research-library-document .research-card-copy>span { grid-column:1/-1; grid-row:auto; -webkit-line-clamp:3; }
  body:has(main.research-library-page) .research-library-document .research-card-copy b { grid-column:1/-1; grid-row:auto; justify-self:start; align-self:auto; }
  body:has(main.research-library-page) .research-support-action-grid, body:has(main.research-library-page) .research-support-faq-grid { grid-template-columns:1fr; }
  body:has(main.research-library-page) .research-support-action-grid { padding:23px; }
  body:has(main.research-library-page) .research-support-band-actions { flex-direction:column; }
  body:has(main.research-library-page) .research-support-band-actions>* { text-align:center; }
}

/* Match the confirmed library master: the hero is a compact editorial entry
   point. The supporting checklist remains in the DOM for accessibility and
   translation, but does not inflate the first viewport. */
html body:has(main.research-library-page) .research-support-hero {
  min-height: 356px;
  padding: 46px 0 42px;
}
html body:has(main.research-library-page) .research-support-hero-grid {
  display: block;
  min-height: 0;
}
html body:has(main.research-library-page) .research-support-brief {
  display: none !important;
}
html body:has(main.research-library-page) .research-support-intro h1 {
  max-width: 690px;
  font-size: clamp(46px, 4vw, 58px);
}
html body:has(main.research-library-page) .research-support-lead {
  max-width: 520px;
  margin-top: 16px;
  font-size: 15px;
}
html body:has(main.research-library-page) .research-support-actions,
html body:has(main.research-library-page) .research-support-boundary {
  display: none !important;
}
html body:has(main.research-library-page) .research-support-hero-controls {
  margin-top: 25px;
}
html body:has(main.research-library-page) .research-support-hero {
  padding-top: 38px;
  padding-bottom: 34px;
}
@media (max-width: 660px) {
  html body:has(main.research-library-page) .research-support-hero { padding-block: 36px 32px; }
  html body:has(main.research-library-page) .research-support-intro h1 { font-size: 43px; }
  /* Native selects default to their longest option's intrinsic width.  On a
     390px viewport that was taking 235px and leaving the search field only
     92px wide.  Let both controls share the line while keeping a usable
     search measure; the selected option can shrink rather than forcing the
     hero beyond its intended mobile rhythm. */
  html body:has(main.research-library-page) .research-support-hero-controls { gap: 8px; }
  html body:has(main.research-library-page) .research-support-hero-controls input {
    flex: 1 1 150px;
    min-width: 150px;
  }
  html body:has(main.research-library-page) .research-support-hero-controls select {
    flex: 1 1 130px;
    min-width: 0;
    width: auto;
  }
}

/* Final presentation override: the legacy bundled stylesheet marks its old
   burgundy image layer as !important. Keep the page content/SEO untouched and
   make this decorative master asset the actual painted hero background. */
html body:has(main.research-library-page) .research-support-hero {
  background-image:
    linear-gradient(90deg, rgba(0,17,51,.99), rgba(0,25,65,.94) 46%, rgba(0,28,70,.58)),
    url('/wp-content/uploads/2026/07/lab-vials2.webp') !important;
  background-position: center, center !important;
  background-size: cover, cover !important;
}
html body:has(main.research-library-page) .research-support-hero::before {
  display: none !important;
  content: none !important;
}
html body:has(main.research-library-page) .research-support-hero-controls > .sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* The legacy site-wide secondary-page theme paints a burgundy canvas and
 * inherits pale copy into every descendant.  Research Library is a white
 * editorial surface below its navy hero, so reset only its ancestor layers
 * and its post-hero default text.  This is presentation-only: guides, links,
 * filters, URL and all rendered source content remain unchanged. */
html:has(main.research-library-page),
body:has(main.research-library-page) {
  background: #fff !important;
}
body:has(main.research-library-page) .site-shell,
body:has(main.research-library-page) .site-main.secondary-page.research-library-page {
  background: #fff !important;
  color: var(--pb-ink) !important;
}
body:has(main.research-library-page) .site-main.secondary-page.research-library-page > :not(.research-support-hero) {
  color: var(--pb-ink);
}

@media (prefers-reduced-motion:reduce) {
  body:has(main.research-library-page) .research-faq-item button .faq-toggle-icon { transition:none; }
}

/* The lead card places its real category above the title; its artwork label
 * sits at the bottom and is the duplicate.  Non-lead cards use the artwork
 * label as the sole visual category, while their existing text remains
 * available to assistive technology and in the server-rendered source. */
html body:has(main.research-library-page) .research-library-feature-card.is-lead .research-card-art > span {
  display: none !important;
}

html body:has(main.research-library-page) .research-library-feature-card:not(.is-lead) .research-card-copy > p {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* A translated topic label can be longer than the remaining half-row on a
 * 390px phone. Stack the existing controls rather than truncating it. */
@media (max-width: 420px) {
  html body:has(main.research-library-page) .research-support-hero-controls {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  html body:has(main.research-library-page) .research-support-hero-controls input,
  html body:has(main.research-library-page) .research-support-hero-controls select {
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
  }
}

/* The retired layout gave mobile CTA controls a 190px flex basis.  That
 * turned two short actions into large empty blocks.  Keep the existing links
 * and quote trigger, but use normal full-width button geometry on phones. */
@media (max-width: 660px) {
  html body:has(main.research-library-page) .research-support-band-actions > * {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    width: 100%;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    line-height: 1.25 !important;
  }
}
