/* Vencilla Catalogue 0.6.5 (0.4.0 base; 0.6.0 hero art, table contrast, figures; 0.6.1 focus outlines; 0.6.2 focus ring contrast; 0.6.4 category visual on product heroes; 0.6.5 hero rules win over site hero CSS). Loaded on catalogue views and on editorial pages that embed catalogue shortcodes. Tokens follow DESIGN_SYSTEM (D-0014); 8px spacing scale; no external assets. */
.vxc{--vxc-navy:#0B1F33;--vxc-blue:#1264A3;--vxc-cyan:#18A7B8;--vxc-clinical:#F8FAFC;--vxc-white:#FFFFFF;--vxc-border:#E2E8F0;--vxc-text2:#526273;
  --vxc-doc:#16855B;--vxc-uq:#B7791F;--vxc-si:#3567A8;display:block;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--vxc-navy)}
.vxc *,.vxc *::before,.vxc *::after{box-sizing:border-box}
/* 0.6.1: the theme sets `body a { outline: none !important }` (Industrie default.css 7.1.3), removing every keyboard focus indicator;
   catalogue focus outlines therefore carry !important (more specific than the theme rule, so they win inside the catalogue only) */
/* 0.6.2: ring colour follows the surface (same rule as the site-wide A11Y-01 block): Pharma Blue on light surfaces (cyan measured
   2.6-2.9:1 there, below 3:1), Scientific Cyan on the navy hero and CTA bands (5.77:1). Keyboard focus only; width / offset unchanged */
.vxc a:focus-visible,.vxc button:focus-visible,.vxc input:focus-visible,.vxc select:focus-visible{outline:2px solid var(--vxc-blue)!important;outline-offset:3px;border-radius:4px}
.vxc .vxc-hero a:focus-visible,.vxc .vxc-hero button:focus-visible,.vxc .vxc-hero input:focus-visible,.vxc .vxc-hero select:focus-visible,
.vxc .vxc-cta a:focus-visible,.vxc .vxc-cta button:focus-visible,.vxc .vxc-cta input:focus-visible,.vxc .vxc-cta select:focus-visible{outline-color:var(--vxc-cyan)!important}
.vxc .vxc-wrap{max-width:1376px;margin-inline:auto;padding-inline:clamp(20px,4.5vw,48px)}
.vxc .vxc-sec{padding:96px 0}
.vxc .vxc-sec-tight{padding:64px 0}
.vxc .vxc-mt,.vxc .vxc-h2.vxc-mt{margin-top:64px}
.vxc .vxc-bg-white{background:var(--vxc-white)}
.vxc .vxc-bg-clinical{background:var(--vxc-clinical);border-top:1px solid var(--vxc-border);border-bottom:1px solid var(--vxc-border)}

/* hero (reuses the approved navy hero band) */
.vxc .vxc-hero{background-color:var(--vxc-navy);color:#fff;padding:104px 0 96px}
.vxc .vxc-hero .vxc-wrap{display:flex;flex-direction:column;gap:20px}
.vxc .vxc-hero .vxc-wrap>*{max-width:780px}
.vxc .vxc-eyebrow{display:inline-flex;align-items:center;gap:12px;margin:0;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--vxc-cyan)}
.vxc .vxc-eyebrow::before{content:"";width:24px;height:1px;background:currentColor}
.vxc .vxc-h1{margin:0;font-size:clamp(2.25rem,3.2vw + .8rem,3.75rem);line-height:1.06;font-weight:600;letter-spacing:-.02em;color:#fff;overflow-wrap:anywhere}
.vxc .vxc-lead{margin:0;font-size:clamp(1.0625rem,.4vw + 1rem,1.25rem);line-height:1.6;color:rgba(255,255,255,.78)}
.vxc .vxc-crumbs ol{display:flex;flex-wrap:wrap;gap:4px 10px;list-style:none;margin:0;padding:0;font-size:13px}
.vxc .vxc-crumbs li+li::before{content:"/";margin-right:10px;color:rgba(255,255,255,.4)}
.vxc .vxc-crumbs a{display:inline-block;padding:12px 0;color:rgba(255,255,255,.75);text-decoration:none}
.vxc .vxc-crumbs a:hover{color:#fff;text-decoration:underline}

/* type */
.vxc .vxc-h2{margin:0 0 24px;font-size:clamp(1.625rem,1.4vw + 1rem,2.375rem);line-height:1.15;font-weight:600;letter-spacing:-.015em;color:var(--vxc-navy)}
.vxc .vxc-on-dark{color:#fff}
.vxc .vxc-text,.vxc .vxc-prose p{margin:0 0 16px;font-size:16px;line-height:1.65;color:var(--vxc-text2)}
.vxc .vxc-panel-title{margin:0 0 12px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--vxc-navy)}
.vxc .vxc-note{margin:16px 0 0;font-size:13px;line-height:1.6;color:var(--vxc-text2)}
.vxc .vxc-muted{color:var(--vxc-text2);font-size:14px}
.vxc .vxc-disclosure{margin:24px 0 0;padding-left:20px;border-left:2px solid var(--vxc-navy);font-size:15px;line-height:1.65;color:var(--vxc-navy)}

/* layout */
.vxc .vxc-split{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:start}
.vxc .vxc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0 0 48px}

/* buttons and links */
.vxc .vxc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px}
.vxc .vxc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:8px;border:1px solid var(--vxc-blue);
  font:600 14px/1.2 Inter,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;text-align:center}
.vxc .vxc-btn-primary{background:var(--vxc-blue);color:#fff}
.vxc .vxc-btn-primary:hover{background:var(--vxc-navy);border-color:var(--vxc-navy);color:#fff}
.vxc .vxc-btn-secondary{background:#fff;color:var(--vxc-blue)}
.vxc .vxc-btn-secondary:hover{border-color:var(--vxc-navy);color:var(--vxc-navy)}
.vxc .vxc-link{display:inline-flex;align-items:center;min-height:44px;font-size:15px;font-weight:600;color:var(--vxc-blue);text-decoration:underline;text-decoration-color:rgba(18,100,163,.35);text-underline-offset:3px}

/* empty state */
.vxc .vxc-empty{max-width:780px;padding:40px;border:1px solid var(--vxc-border);border-top:3px solid var(--vxc-navy);border-radius:10px;background:var(--vxc-white)}
.vxc .vxc-empty .vxc-text{margin:0}
.vxc .vxc-empty .vxc-actions{gap:8px 24px}

/* cards (informational: class, exact area text, Type, confirmed form, ID, two actions) */
.vxc .vxc-card{display:flex;flex-direction:column;gap:16px;padding:24px;border:1px solid var(--vxc-border);border-top:2px solid var(--vxc-navy);border-radius:8px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}
.vxc .vxc-card:hover,.vxc .vxc-card:focus-within{border-color:#C5D0DC;box-shadow:0 6px 20px rgba(11,31,51,.06)}
.vxc .vxc-card-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:24px}
.vxc .vxc-tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;background:#EEF3F8;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--vxc-navy)}
.vxc .vxc-card-title{margin:0;font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.005em}
.vxc .vxc-card-title a{color:var(--vxc-navy);text-decoration:none}
.vxc .vxc-card-title a:hover{color:var(--vxc-blue);text-decoration:underline}
.vxc .vxc-card-dl{display:grid;gap:8px;margin:0}
.vxc .vxc-card-dl div{display:flex;flex-wrap:wrap;gap:2px 12px;align-items:baseline}
.vxc .vxc-card-dl dt{flex:0 0 120px}
.vxc .vxc-card-dl dd{flex:1 1 140px;min-width:0}
.vxc .vxc-card-dl dt{margin:0;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--vxc-text2)}
.vxc .vxc-card-dl dd{margin:0;font-size:15px;line-height:1.45;color:var(--vxc-navy);overflow-wrap:anywhere}
.vxc .vxc-card-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-top:auto;padding-top:16px;border-top:1px solid var(--vxc-border)}
.vxc .vxc-card-id{font-size:12px;letter-spacing:.06em;color:var(--vxc-text2);font-variant-numeric:tabular-nums}
.vxc .vxc-card-links{display:flex;flex-wrap:wrap;gap:4px 16px}
.vxc .vxc-card-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:600;color:var(--vxc-blue);text-decoration:underline;text-decoration-color:rgba(18,100,163,.35);text-underline-offset:3px}
.vxc .vxc-card-link:hover{color:var(--vxc-navy)}

/* evidence (semantic colours + text, never colour alone) */
.vxc .vxc-ev-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.vxc .vxc-ev{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border:1px solid var(--vxc-border);border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.1em;color:var(--vxc-navy);background:#fff}
.vxc .vxc-ev-dot{width:8px;height:8px;border-radius:50%;background:var(--vxc-text2)}
.vxc .vxc-ev-doc .vxc-ev-dot{background:var(--vxc-doc)}
.vxc .vxc-ev-uq .vxc-ev-dot{background:var(--vxc-uq)}
.vxc .vxc-ev-si .vxc-ev-dot{background:var(--vxc-si)}
.vxc .vxc-ev-text,.vxc .vxc-ev-date{font-size:14px;line-height:1.55;color:var(--vxc-text2)}
.vxc .vxc-ev-link{font-size:14px;font-weight:600;color:var(--vxc-blue);padding:10px 0}

/* panels, lists, tables */
.vxc .vxc-panel{padding:28px;border:1px solid var(--vxc-border);border-radius:10px;background:var(--vxc-clinical)}
.vxc .vxc-avail{margin:0 0 16px;font-size:18px;font-weight:600}
.vxc .vxc-dl{margin:0;border-top:2px solid var(--vxc-navy)}
.vxc .vxc-row{display:grid;grid-template-columns:200px minmax(0,1fr);gap:8px 24px;padding:16px 0;border-bottom:1px solid var(--vxc-border)}
.vxc .vxc-row dt{margin:0;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--vxc-text2)}
.vxc .vxc-row dd{margin:0;font-size:16px;color:var(--vxc-navy)}
.vxc .vxc-row a,.vxc .vxc-links a,.vxc .vxc-sources a{color:var(--vxc-blue)}
.vxc .vxc-ticks{list-style:none;margin:0;padding:0}
.vxc .vxc-ticks li{position:relative;padding:8px 0 8px 22px;font-size:15px;color:var(--vxc-navy)}
.vxc .vxc-ticks li::before{content:"";position:absolute;left:0;top:16px;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--vxc-blue)}
.vxc .vxc-links,.vxc .vxc-sources{list-style:none;margin:0 0 32px;padding:0}
.vxc .vxc-links li,.vxc .vxc-sources li{padding:8px 0;border-bottom:1px solid var(--vxc-border)}
.vxc .vxc-links a{display:inline-block;padding:6px 0;font-size:16px}
.vxc .vxc-table-wrap{overflow-x:auto}
.vxc .vxc-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--vxc-border);font-size:15px}
.vxc .vxc-table th{padding:14px 20px;text-align:left;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--vxc-text2);border-bottom:1px solid var(--vxc-border)}
.vxc .vxc-table td{padding:16px 20px;border-bottom:1px solid var(--vxc-border);vertical-align:middle;color:var(--vxc-navy)}

/* tap targets for inline links (>= 44px) */
.vxc .vxc-row dd a,.vxc .vxc-term-links a,.vxc .vxc-card-title a,.vxc .vxc-sources a{display:inline-flex;align-items:center;min-height:44px}

/* search and filters */
.vxc .vxc-search{display:flex;gap:12px;max-width:780px;margin:0 0 40px}
.vxc .vxc-search-hero{margin:16px 0 0;width:100%}
.vxc .vxc-search-hero input{border-color:transparent;box-shadow:0 0 0 1px rgba(255,255,255,.25)}
.vxc .vxc-empty-search{margin-top:32px;padding-top:24px;border-top:1px solid var(--vxc-border)}
.vxc .vxc-empty-search .vxc-search{margin:0}
.vxc .vxc-search input{flex:1;min-width:0;min-height:52px;padding:12px 16px;border:1px solid #7A8794;border-radius:8px;font:400 16px/1.4 Inter,system-ui,sans-serif;color:var(--vxc-navy);background:#fff}
.vxc .vxc-filters{margin:0 0 40px;padding:24px;border:1px solid var(--vxc-border);border-radius:10px;background:var(--vxc-clinical)}
.vxc .vxc-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.vxc .vxc-field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--vxc-navy)}
.vxc .vxc-field select{min-height:48px;padding:10px 12px;border:1px solid #7A8794;border-radius:8px;background:#fff;font:400 15px Inter,system-ui,sans-serif;color:var(--vxc-navy)}
.vxc .vxc-pages ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.vxc .vxc-pages a,.vxc .vxc-pages span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 12px;border:1px solid var(--vxc-border);border-radius:8px;color:var(--vxc-navy);text-decoration:none}
.vxc .vxc-pages .current{background:var(--vxc-navy);color:#fff;border-color:var(--vxc-navy)}

/* CTA */
.vxc .vxc-cta{background:var(--vxc-navy);padding:112px 0;text-align:center}
.vxc .vxc-cta-inner{display:flex;flex-direction:column;align-items:center;gap:20px;max-width:780px}
.vxc .vxc-cta .vxc-actions{justify-content:center}

/* section navigation (enabled classes + search; held classes never listed) */
.vxc .vxc-subnav{background:var(--vxc-white);border-bottom:1px solid var(--vxc-border)}
.vxc .vxc-classnav ul{display:flex;flex-wrap:wrap;gap:0 32px;list-style:none;margin:0;padding:0}
.vxc .vxc-classnav a{display:inline-flex;align-items:center;min-height:56px;font-size:14px;font-weight:600;color:var(--vxc-text2);text-decoration:none;border-bottom:2px solid transparent}
.vxc .vxc-classnav a:hover{color:var(--vxc-navy)}
.vxc .vxc-classnav a[aria-current="page"]{color:var(--vxc-navy);border-bottom-color:var(--vxc-blue)}

/* results header and active-filter chips */
.vxc .vxc-results-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin:0 0 24px}
.vxc .vxc-count{margin:0;font-size:14px;font-weight:600;color:var(--vxc-text2)}
.vxc .vxc-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.vxc .vxc-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--vxc-border);border-radius:6px;background:var(--vxc-clinical);font-size:14px;color:var(--vxc-navy);text-decoration:none}
.vxc .vxc-chip:hover{border-color:var(--vxc-navy)}
.vxc .vxc-chip-x{font-size:16px;line-height:1;color:var(--vxc-text2)}

/* landing: class pathways and enquiry process */
.vxc .vxc-kicker{margin:0 0 12px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--vxc-blue)}
.vxc .vxc-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.vxc .vxc-path{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:32px;border:1px solid var(--vxc-border);border-radius:10px;background:#fff;color:var(--vxc-navy);text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease}
.vxc .vxc-path:hover,.vxc .vxc-path:focus-visible{border-color:var(--vxc-blue);box-shadow:0 6px 20px rgba(11,31,51,.06)}
.vxc .vxc-path-title{font-size:24px;font-weight:600;line-height:1.2;letter-spacing:-.01em}
.vxc .vxc-path .vxc-text{margin:0}
.vxc .vxc-path-meta{font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--vxc-text2)}
.vxc .vxc-path-go{margin-top:auto;font-size:14px;font-weight:600;color:var(--vxc-blue)}
.vxc .vxc-split-even{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.vxc .vxc-steps{list-style:none;margin:0;padding:0;border-top:2px solid var(--vxc-navy)}
.vxc .vxc-steps li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:4px 16px;padding:20px 0;border-bottom:1px solid var(--vxc-border)}
.vxc .vxc-step-no{grid-row:span 2;font-size:14px;font-weight:600;color:var(--vxc-blue);font-variant-numeric:tabular-nums}
.vxc .vxc-step-title{margin:0;font-size:17px;font-weight:600;color:var(--vxc-navy)}
.vxc .vxc-steps .vxc-text{margin:0;font-size:15px}
.vxc .vxc-note-box{margin:24px 0 0;padding:16px 20px;border:1px solid var(--vxc-border);border-left:3px solid var(--vxc-blue);border-radius:6px;background:var(--vxc-clinical);font-size:14px}

@media (prefers-reduced-motion:reduce){
  .vxc *{transition:none!important}
}
@media (max-width:1024px){
  .vxc .vxc-paths{grid-template-columns:1fr}
  .vxc .vxc-split-even{grid-template-columns:1fr;gap:40px}
  .vxc .vxc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vxc .vxc-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vxc .vxc-split{grid-template-columns:1fr;gap:40px}
}
@media (max-width:767px){
  .vxc .vxc-sec{padding:64px 0}
  .vxc .vxc-hero{padding:72px 0 64px}
  .vxc .vxc-cta{padding:80px 0}
  .vxc .vxc-grid,.vxc .vxc-filter-grid{grid-template-columns:1fr}
  .vxc .vxc-row{grid-template-columns:1fr;gap:4px}
  .vxc .vxc-search{flex-direction:column}
  .vxc .vxc-sec-tight{padding:48px 0}
  .vxc .vxc-mt,.vxc .vxc-h2.vxc-mt{margin-top:48px}
  .vxc .vxc-path{padding:24px}
  .vxc .vxc-card-dl dt{flex-basis:100%}
  .vxc .vxc-classnav ul{gap:0 20px}
  .vxc .vxc-classnav a{min-height:48px}
  .vxc .vxc-empty{padding:28px 20px}
  .vxc .vxc-btn{width:100%}
  .vxc .vxc-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .vxc .vxc-table,.vxc .vxc-table tbody,.vxc .vxc-table tr,.vxc .vxc-table td{display:block;width:100%}
  .vxc .vxc-table tr{border-bottom:1px solid var(--vxc-border);padding:8px 0}
  .vxc .vxc-table td{border:0;padding:8px 16px}
  .vxc .vxc-table td[data-label]::before{content:attr(data-label);display:block;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--vxc-text2)}
}

/* 0.4.0: embedded catalogue output (shortcodes on editorial pages), product tables, grouped area views, area directory */
.vxc.vxc-embed{background:transparent}
.vxc .vxc-mt-s{margin-top:32px}
.vxc .vxc-search-typed{max-width:none;flex-wrap:wrap}
.vxc .vxc-search-typed input{flex:1 1 240px}
.vxc .vxc-search-typed .vxc-btn{flex:0 0 auto}
.vxc .vxc-search-type{flex:0 1 240px;min-width:180px;min-height:52px;padding:12px 16px;border:1px solid #7A8794;border-radius:8px;background:#fff;font:500 15px/1.4 Inter,system-ui,sans-serif;color:var(--vxc-navy)}
.vxc.vxc-embed .vxc-search{margin:0}
.vxc.vxc-embed .vxc-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));margin:0 0 24px}
.vxc .vxc-embed-more{margin:0}
.vxc .vxc-embed-empty{max-width:780px;padding:32px;border:1px solid var(--vxc-border);border-top:3px solid var(--vxc-navy);border-radius:10px;background:var(--vxc-white)}
.vxc .vxc-embed-empty .vxc-text{margin:0 0 8px}
.vxc .vxc-paths.vxc-paths-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.vxc .vxc-areas{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;list-style:none;margin:0;padding:0}
.vxc .vxc-area{display:flex;flex-direction:column;gap:8px;height:100%;min-height:112px;padding:24px;border:1px solid var(--vxc-border);border-radius:8px;background:#fff;color:var(--vxc-navy);text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease}
.vxc .vxc-area:hover,.vxc .vxc-area:focus-visible{border-color:var(--vxc-blue);box-shadow:0 6px 20px rgba(11,31,51,.06)}
.vxc .vxc-area-name{font-size:18px;font-weight:600;line-height:1.3}
.vxc .vxc-area-meta{font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--vxc-text2)}
.vxc .vxc-area-go{margin-top:auto;font-size:14px;font-weight:600;color:var(--vxc-blue)}
.vxc .vxc-group{margin:0 0 48px}
.vxc .vxc-group-title{display:flex;align-items:center;gap:12px;margin:0 0 16px;font-size:20px;font-weight:600;color:var(--vxc-navy)}
.vxc .vxc-group-n{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:2px 8px;border-radius:6px;background:#EEF3F8;font-size:13px;font-weight:600}
.vxc .vxc-ptable th[scope="row"]{padding:16px 20px;text-align:left;border-bottom:1px solid var(--vxc-border);font-size:16px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--vxc-navy)}
.vxc .vxc-ptable th[scope="row"] a{display:inline-flex;align-items:center;min-height:44px;color:var(--vxc-navy);text-decoration:none}
.vxc .vxc-ptable th[scope="row"] a:hover{color:var(--vxc-blue);text-decoration:underline}
.vxc .vxc-ptable-id{font-size:13px;letter-spacing:.04em;color:var(--vxc-text2);font-variant-numeric:tabular-nums;white-space:nowrap}
.vxc .vxc-ptable-act{white-space:nowrap}
.vxc .vxc-ptable-act .vxc-card-link+.vxc-card-link{margin-left:16px}
@media (max-width:767px){
  .vxc .vxc-search-type{flex:none;width:100%}
  .vxc .vxc-ptable th[scope="row"]{display:block;width:100%;border:0;padding:8px 16px 0}
  .vxc .vxc-ptable-act{white-space:normal}
  .vxc .vxc-embed-empty{padding:24px 20px}
}

/* 0.6.0 image-led heroes: decorative category visuals (CSS backgrounds, no alt text needed) under a navy fade so text keeps
   AA contrast; image on the right; shorter, varied proportions; homepage globe untouched. */
/* 0.6.5: the image hero is a <section> that also carries the site classes vx-section vx-hero-sub. The site's Additional CSS
   (.vx-section:is(.vx-bg-navy,.vx-hero), .vx-section.vx-hero-sub and its 1024 / 767 px variants, specificity 0,2,0) loads after this
   file and replaced the category image, size, position and padding with the site globe. Qualifying the hero rules that style the
   section with the element type (0,2,1) makes them win regardless of load order, on catalogue heroes only; ::before rules unchanged */
.vxc section.vxc-hero-art{position:relative;isolation:isolate;overflow:hidden;background-color:var(--vxc-navy);background-repeat:no-repeat;background-size:cover;background-position:right center;padding:88px 0 80px}
.vxc .vxc-hero-art::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0B1F33 0%,#0B1F33 34%,rgba(11,31,51,.86) 52%,rgba(11,31,51,.45) 74%,rgba(11,31,51,.18) 100%)}
.vxc .vxc-hero-art .vxc-wrap>*{max-width:720px}
.vxc section.vxc-hero-api{background-image:url(img/api-category-powder-chemistry.webp)}
.vxc section.vxc-hero-fdf{background-image:url(img/fdf-category-pharmaceuticals.webp)}
.vxc section.vxc-hero-chem{background-image:url(img/intermediate-specialty-lab.webp)}
.vxc section.vxc-hero-molecular{background-image:url(img/api-product-molecular-background.webp);padding:64px 0 56px}
.vxc .vxc-hero-molecular::before{background:linear-gradient(90deg,#0B1F33 0%,#0B1F33 42%,rgba(11,31,51,.88) 62%,rgba(11,31,51,.6) 100%)}
.vxc .vxc-hero-molecular .vxc-h1{font-size:clamp(2rem,2.4vw + .8rem,3rem)}
/* 0.6.4 product-detail heroes: the class's category visual at the compact height of the former molecular hero, with a longer
   solid navy area so the title and the (longer) overview stay on navy; the image fades in on the right only */
.vxc section.vxc-hero-compact{padding:64px 0 56px}
.vxc .vxc-hero-compact::before{background:linear-gradient(90deg,#0B1F33 0%,#0B1F33 46%,rgba(11,31,51,.9) 60%,rgba(11,31,51,.55) 80%,rgba(11,31,51,.25) 100%)}
.vxc .vxc-hero-compact .vxc-h1{font-size:clamp(2rem,2.4vw + .8rem,3rem)}

/* 0.6.0 product tables: the theme styles every `table th` near-black (#1F1F1F); catalogue tables set their own backgrounds so
   names stay readable in every state. Header: navy with white text. Body and row headers: white; links blue + underline. */
.vxc .vxc-table thead th{background:var(--vxc-navy);color:#fff;border-bottom:1px solid var(--vxc-navy)}
.vxc .vxc-table tbody th,.vxc .vxc-table tbody td{background:#fff}
.vxc .vxc-table th,.vxc .vxc-table td{border-left:0;border-right:0}   /* theme draws dark vertical cell borders; catalogue tables use horizontal rules only */
.vxc .vxc-table tbody th{color:var(--vxc-navy);font-weight:600}
.vxc .vxc-ptable th[scope="row"]{background:#fff;color:var(--vxc-navy)}
.vxc .vxc-ptable th[scope="row"] a,.vxc .vxc-ptable th[scope="row"] a:visited{color:var(--vxc-blue);text-decoration:underline;text-decoration-color:rgba(18,100,163,.45);text-underline-offset:3px;text-decoration-thickness:1px}
.vxc .vxc-ptable th[scope="row"] a:hover{color:var(--vxc-navy);text-decoration-color:currentColor}
.vxc .vxc-table tbody tr:hover>th,.vxc .vxc-table tbody tr:hover>td,.vxc .vxc-table tbody tr:focus-within>th,.vxc .vxc-table tbody tr:focus-within>td{background:#EAF5FA}
.vxc .vxc-ptable th[scope="row"] a:focus-visible{outline:2px solid var(--vxc-blue)!important;outline-offset:2px;border-radius:2px}

/* 0.6.0 structure figures, owner product images, long identifiers */
.vxc .vxc-aside{display:flex;flex-direction:column;gap:24px}
.vxc .vxc-figures{display:grid;gap:16px}
.vxc .vxc-figure{margin:0;padding:16px;border:1px solid var(--vxc-border);border-radius:10px;background:#fff}
.vxc .vxc-structure-svg{display:block;width:100%;height:auto;max-height:340px}
.vxc .vxc-figure figcaption{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding-top:12px;border-top:1px solid var(--vxc-border)}
.vxc .vxc-figure-title{font-size:14px;font-weight:600;color:var(--vxc-navy)}
.vxc .vxc-figure-src{font-size:12px;line-height:1.5;color:var(--vxc-text2)}
.vxc .vxc-pimg{margin:0;border:1px solid var(--vxc-border);border-radius:10px;overflow:hidden;background:#fff}
.vxc .vxc-pimg .vxc-pimg-img{display:block;width:100%;max-width:100%;height:auto}
.vxc .vxc-card-img{margin:-24px -24px 0;border-bottom:1px solid var(--vxc-border);border-radius:8px 8px 0 0;overflow:hidden}
.vxc .vxc-card-img .vxc-card-img-img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#fff}
.vxc .vxc-break{overflow-wrap:anywhere;word-break:break-word}
.vxc .vxc-ref-table tbody th{font-size:15px;letter-spacing:0;text-transform:none}
.vxc .vxc-ref-table td{white-space:nowrap}

@media (max-width:1024px){
  .vxc section.vxc-hero-art{background-position:70% center}
  /* 0.6.4: on tablets the text column spans almost the full width, so every image hero (category and product) keeps a strong
     navy overlay throughout (category heroes measured 1.6:1 for the overview text here before; desktop unchanged) */
  .vxc .vxc-hero-art::before{background:linear-gradient(90deg,#0B1F33 0%,#0B1F33 55%,rgba(11,31,51,.9) 75%,rgba(11,31,51,.8) 100%)}
}
@media (max-width:767px){
  .vxc section.vxc-hero-art{padding:64px 0 56px;background-position:75% center}
  .vxc .vxc-hero-art::before{background:linear-gradient(180deg,rgba(11,31,51,.9) 0%,rgba(11,31,51,.94) 50%,#0B1F33 100%)}
  .vxc section.vxc-hero-molecular,.vxc section.vxc-hero-compact{padding:48px 0 40px}
  .vxc .vxc-ptable th[scope="row"]{background:transparent}
  .vxc .vxc-table tbody th,.vxc .vxc-table tbody td{background:transparent}
  .vxc .vxc-table tbody tr{background:#fff}
  .vxc .vxc-ref-table tbody th{display:block;width:100%;border:0;padding:8px 16px 0}
  .vxc .vxc-ref-table td{white-space:normal}
}
