/* LabCarry shared page layout. Scoped above the original per-page CSS. */
#lc-wp.lc-ui {
  --lc-section-gap: 4rem;
  --lc-page-width: 77.5rem;
  --lc-reading-width: var(--lc-page-width);
  --lc-sticky-top: 7rem;
  --line: #d8e2e9;
  --paper: #f4f7fa;
  font-size: 1.125rem;
  line-height: 1.7;
}
body.admin-bar #lc-wp.lc-ui { --lc-sticky-top: 9rem; }
#lc-wp.lc-ui .container {
  width: min(var(--lc-page-width), calc(100% - 5rem));
  max-width: none;
  margin-inline: auto;
  padding-inline: 0;
}
#lc-wp.lc-ui :where(main, article, section, header, aside, nav, .two-grid > *, .three-grid > *, .four-grid > *) { min-width: 0; }
#lc-wp.lc-ui :where(h1, h2, h3, p, li, td, th, a, summary) { overflow-wrap: break-word; }
#lc-wp.lc-ui h1 { font-size: clamp(2.25rem, 3.7vw, 3.5rem); line-height: 1.13; letter-spacing: -.025em; }
#lc-wp.lc-ui h2 { font-size: clamp(1.75rem, 2.35vw, 2.125rem); line-height: 1.22; letter-spacing: -.018em; margin: 0 0 1.5rem; }
#lc-wp.lc-ui h3 { font-size: 1.3125rem; line-height: 1.35; letter-spacing: -.01em; margin: 1.75rem 0 .75rem; }
#lc-wp.lc-ui p { line-height: 1.75; margin: 0 0 1.125rem; }
#lc-wp.lc-ui :where(ul, ol) { margin: 1.125rem 0 1.5rem; padding-left: 1.375rem; }
#lc-wp.lc-ui li { padding-block: .25rem; }
#lc-wp.lc-ui :where(li + li) { margin-top: .25rem; }
#lc-wp.lc-ui .eyebrow { font-size: .875rem; line-height: 1.5; margin: 0 0 1.125rem; letter-spacing: .09em; }
#lc-wp.lc-ui .breadcrumb { font-size: .875rem; line-height: 1.6; gap: .5rem; padding: 1.5rem 0; }
#lc-wp.lc-ui .page-hero { padding: 1.75rem 0 3.25rem; border-bottom: 1px solid var(--line); }
#lc-wp.lc-ui .page-hero h1 { max-width: 66rem; margin: 0 0 1.5rem; }
#lc-wp.lc-ui .page-hero p { max-width: 57rem; font-size: 1.25rem; line-height: 1.7; }
#lc-wp.lc-ui .page-hero p.eyebrow { font-size: .875rem; }
#lc-wp.lc-ui .page-hero > :last-child { margin-bottom: 0; }
#lc-wp.lc-ui .buttons { gap: .875rem; margin-top: 1.75rem; }
#lc-wp.lc-ui .button { min-height: 3.25rem; line-height: 1.4; padding: .875rem 1.375rem; text-align: center; }
#lc-wp.lc-ui .button > span { flex-shrink: 0; }

/* One reading column and a compact, independent contents navigation. */
#lc-wp.lc-ui .page-layout {
  display: grid;
  grid-template-columns: 13.5rem minmax(0, 1fr);
  gap: 0 clamp(2rem, 4.5vw, 4rem);
  align-items: start;
  justify-content: normal;
  padding-block: var(--lc-section-gap);
}
#lc-wp.lc-ui .page-layout > .article { display: block; width: 100%; max-width: var(--lc-reading-width); margin: 0; justify-self: end; }
#lc-wp.lc-ui .article > section { margin: 0; padding: 0; scroll-margin-top: calc(var(--lc-sticky-top) + 1rem); }
#lc-wp.lc-ui .article > section + section { margin-top: var(--lc-section-gap); }
#lc-wp.lc-ui .article h2 { font-size: 1.875rem; line-height: 1.25; margin-bottom: 1.5rem; }
#lc-wp.lc-ui .article h3 { font-size: 1.3125rem; line-height: 1.4; }
#lc-wp.lc-ui .article > section > :where(p, ul, ol) { max-width: 78ch; }
#lc-wp.lc-ui :where(.article > section, .lc-section, .notice, .solution-card, .lc-application-topic) > :first-child { margin-top: 0; }
#lc-wp.lc-ui :where(.article > section, .lc-section, .notice, .solution-card, .lc-application-topic) > :last-child { margin-bottom: 0; }
#lc-wp.lc-ui :where(.article, .lc-section, .lc-application-topic) :where(p, li, td) a:not(.button):not(.link) { color: var(--blue); text-decoration: underline; text-underline-offset: .18em; text-decoration-thickness: 1px; }
#lc-wp.lc-ui .contents { position: sticky; top: var(--lc-sticky-top); align-self: start; width: 100%; font-size: .9375rem; border-left: 2px solid var(--line); padding: 0 0 0 1.125rem; margin: 0; }
#lc-wp.lc-ui .lc-toc { margin: 0; padding: 0; border: 0; }
#lc-wp.lc-ui .lc-toc > summary { color: var(--ink); font-size: .875rem; font-weight: 700; line-height: 1.5; padding: 0 0 .875rem; cursor: pointer; }
#lc-wp.lc-ui .lc-toc > nav { display: grid; grid-template-columns: minmax(0, 1fr); gap: .125rem; max-height: calc(100vh - var(--lc-sticky-top) - 5rem); overflow: auto; scrollbar-width: thin; padding-right: .5rem; }
#lc-wp.lc-ui .lc-toc:not([open]) > nav { display: none; }
#lc-wp.lc-ui .contents a { display: block; margin: 0; padding: .5rem .375rem; line-height: 1.45; color: #526372; border-radius: .2rem; }
#lc-wp.lc-ui .contents a:hover, #lc-wp.lc-ui .contents a:focus-visible { color: #075c94; background: #edf4f9; }

/* Hub sections use the same spacing regardless of their original element type. */
#lc-wp.lc-ui .section { padding-block: var(--lc-section-gap); }
#lc-wp.lc-ui .lc-section-stack { display: grid; gap: var(--lc-section-gap); }
#lc-wp.lc-ui .lc-section-stack > .lc-section { margin: 0; padding: 0; scroll-margin-top: calc(var(--lc-sticky-top) + 1rem); }
#lc-wp.lc-ui .lc-section-stack > .lc-section h2 { max-width: 60rem; }
#lc-wp.lc-ui .lc-section-stack > .notice { margin: 0; padding: 1.75rem 2rem; }
#lc-wp.lc-ui .lc-section-stack > .lc-section:not(.lc-solutions-grid):not(.lc-resource-index) > p { max-width: 62rem; }
#lc-wp.lc-ui .section-head { gap: 2.5rem; margin-bottom: 2rem; align-items: start; }
#lc-wp.lc-ui .section-head p { align-self: start; }
#lc-wp.lc-ui .section-head h2 { margin-bottom: 0; }
#lc-wp.lc-ui .two-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 3rem; align-items: start; }
#lc-wp.lc-ui .three-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; align-items: stretch; }
#lc-wp.lc-ui .four-grid { gap: 1.5rem; }
#lc-wp.lc-ui .solution-card { padding: 1.75rem; border-color: var(--line); }
#lc-wp.lc-ui .solution-card h3 { margin: 0 0 1rem; font-size: 1.5rem; line-height: 1.3; }
#lc-wp.lc-ui .solution-card p { margin: 0 0 1.5rem; font-size: 1.0625rem; }
#lc-wp.lc-ui .solution-card .link { padding-top: .5rem; line-height: 1.5; }
#lc-wp.lc-ui .category-index { margin-bottom: 1.5rem; }
#lc-wp.lc-ui .notice { padding: 1.5rem 1.75rem; margin: 1.75rem 0; border-left: 3px solid var(--blue); }
#lc-wp.lc-ui .notice h2 { font-size: 1.75rem; }
#lc-wp.lc-ui .notice h3 { font-size: 1.1875rem; margin: 0 0 .875rem; }
#lc-wp.lc-ui .notice .link { display: inline-block; margin-top: .5rem; }

/* Resource rows have one aligned title/summary column and consistent separation. */
#lc-wp.lc-ui .resource-row { grid-template-columns: 2.5rem minmax(0, 1fr) 11.5rem; gap: 1.5rem; padding: 1.75rem 0; align-items: start; }
#lc-wp.lc-ui .resource-row h3 { font-size: 1.5rem; line-height: 1.35; margin: 0; }
#lc-wp.lc-ui .resource-row p { max-width: 52rem; font-size: 1.0625rem; line-height: 1.7; margin: .875rem 0 0; }
#lc-wp.lc-ui .resource-row small { font-size: .875rem; line-height: 1.6; padding-top: .25rem; }
#lc-wp.lc-ui .resource-row > span { padding-top: .25rem; line-height: 1.6; }
#lc-wp.lc-ui .resource-row:hover h3 { color: var(--blue); text-decoration: underline; text-underline-offset: .18em; }

/* Tables retain semantic rows and scroll inside their own frame on small screens. */
#lc-wp.lc-ui .table-wrap { width: 100%; max-width: 100%; margin: 1.75rem 0; overflow-x: auto; border: 1px solid var(--line); overscroll-behavior-x: contain; }
#lc-wp.lc-ui .table-wrap > div { overflow: visible; }
#lc-wp.lc-ui .technical-table { width: 100%; min-width: 36rem; margin: 0; border-collapse: collapse; table-layout: auto; font-size: 1rem; line-height: 1.6; }
#lc-wp.lc-ui .technical-table :where(th, td) { white-space: normal; vertical-align: top; text-align: left; padding: 1rem 1.125rem; }
#lc-wp.lc-ui .technical-table th { background: #eaf1f7; font-size: .9375rem; font-weight: 700; color: var(--ink); }
#lc-wp.lc-ui .technical-table td { border-top: 1px solid var(--line); }
#lc-wp.lc-ui .technical-table td:first-child { min-width: 9rem; width: 25%; font-weight: 600; }
#lc-wp.lc-ui .technical-table tbody tr:nth-child(even) { background: #f8fafc; }
#lc-wp.lc-ui .table-wrap:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
#lc-wp.lc-ui .article .workflow { margin: 1.75rem 0; padding: 1.75rem; background: var(--paper); border-color: var(--line); }
#lc-wp.lc-ui .article .workflow ol { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; margin: 0; }
#lc-wp.lc-ui .workflow li { margin: 0; line-height: 1.55; }

/* FAQs, related links and the enquiry form share the reading rhythm. */
#lc-wp.lc-ui .faq > h2 { margin-bottom: 1.5rem; }
#lc-wp.lc-ui .faq details { margin: 0; padding: 1.25rem 0; border-top: 1px solid var(--line); }
#lc-wp.lc-ui .faq summary { padding: 0 .5rem 0 0; font-size: 1.125rem; line-height: 1.55; }
#lc-wp.lc-ui .faq details p { font-size: 1.0625rem; line-height: 1.75; margin: 1rem 0 0; }
#lc-wp.lc-ui .related { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
#lc-wp.lc-ui .related a { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1.25rem; font-size: 1rem; line-height: 1.55; }
#lc-wp.lc-ui .related a > span { flex: 0 0 auto; }
#lc-wp.lc-ui .rfq { width: 100%; max-width: none; padding-block: 3rem; }
#lc-wp.lc-ui .rfq :where(input, textarea, select) { font-size: 1rem; line-height: 1.5; }
#lc-wp.lc-ui .rfq .rfq-field { margin-bottom: 1.5rem; }
#lc-wp.lc-ui .rfq legend { margin-bottom: 1.5rem; line-height: 1.35; }
#lc-wp.lc-ui .rfq fieldset { margin: 0 0 2.5rem; }
#lc-wp.lc-ui .rfq fieldset:last-of-type { margin-bottom: 1.5rem; }

/* About is a centered company profile, not a long technical article with a side rail. */
#lc-wp.lc-ui[data-lc-page="about"] .page-layout { display: block; }
#lc-wp.lc-ui[data-lc-page="about"] :is(.breadcrumb, .page-hero, .contents) { max-width: var(--lc-page-width); margin-inline: auto; }
#lc-wp.lc-ui[data-lc-page="about"] .contents { position: static; padding: 0 0 1.5rem; margin: 0 auto 3rem; border: 0; border-bottom: 1px solid var(--line); }
#lc-wp.lc-ui[data-lc-page="about"] .lc-toc > nav { display: flex; flex-wrap: wrap; gap: .375rem 1.25rem; max-height: none; padding: 0; overflow: visible; }
#lc-wp.lc-ui[data-lc-page="about"] .article { max-width: var(--lc-page-width); margin-inline: auto; }
#lc-wp.lc-ui[data-lc-page="about"] #focus { padding: 1.75rem 2rem; border-left: 3px solid var(--blue); background: var(--paper); }
#lc-wp.lc-ui[data-lc-page="contact"] :where(#first-brief, #review-outcome) { width: 100%; max-width: none !important; margin-inline: 0; }
#lc-wp.lc-ui[data-lc-page="applications"] .jump-links { display: none; }
#lc-wp.lc-ui .lc-application-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.75rem 2rem; margin: 1.75rem 0; }
#lc-wp.lc-ui .lc-application-topic h3 { margin: 0 0 .75rem; font-size: 1.1875rem; }
#lc-wp.lc-ui .lc-application-topic p { margin-bottom: 0; font-size: 1.0625rem; }
#lc-wp.lc-ui .lc-application .notice { margin: 1.75rem 0; }
#lc-wp.lc-ui .lc-application > .link { display: inline-block; margin-top: .25rem; }

/* Shared page edges. */
#lc-wp.lc-ui .header-inner { min-height: 5.375rem; }
#lc-wp.lc-ui .header-inner .brand-logo { width: 14rem; max-width: 48vw; height: auto; }
#lc-wp.lc-ui .nav { gap: 1.125rem; }
#lc-wp.lc-ui .cta-band { padding-block: 3rem; }
#lc-wp.lc-ui .cta-inner { gap: 2rem; }
#lc-wp.lc-ui .cta-band h2 { font-size: 2rem; line-height: 1.25; margin-bottom: .875rem; }
#lc-wp.lc-ui .footer { padding: 3rem 0 1.25rem; }
#lc-wp.lc-ui .footer-grid { grid-template-columns: 1.25fr 1fr 1fr; gap: 2.5rem; align-items: start; }
#lc-wp.lc-ui .footer h3 { margin: 0 0 1rem; font-size: 1rem; }
#lc-wp.lc-ui .footer-bottom { margin-top: 2.5rem; padding-top: 1rem; line-height: 1.6; }

@media (max-width: 1120px) {
  #lc-wp.lc-ui .three-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #lc-wp.lc-ui .three-grid > :last-child:nth-child(odd) { grid-column: 1 / -1; }
}
@media (max-width: 1079px) {
  #lc-wp.lc-ui { --lc-section-gap: 3.25rem; }
  #lc-wp.lc-ui .page-layout { display: block; }
  #lc-wp.lc-ui .page-layout > .article { max-width: none; }
  #lc-wp.lc-ui .contents { position: static; top: auto; margin: 0 0 2.5rem; padding: 1rem 1.25rem; border: 1px solid var(--line); background: var(--paper); }
  #lc-wp.lc-ui .lc-toc > summary { font-size: .9375rem; padding: 0; }
  #lc-wp.lc-ui .lc-toc[open] > summary { margin-bottom: .75rem; }
  #lc-wp.lc-ui .lc-toc > nav { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: none; overflow: visible; padding: 0; gap: .25rem 1rem; }
  #lc-wp.lc-ui[data-lc-page="about"] .contents { padding: 1rem 1.25rem; margin-bottom: 2.5rem; border: 1px solid var(--line); }
  #lc-wp.lc-ui[data-lc-page="about"] .lc-toc > nav { display: grid; }
  #lc-wp.lc-ui .resource-row { grid-template-columns: 2rem minmax(0, 1fr); gap: .5rem 1.25rem; }
  #lc-wp.lc-ui .resource-row small { grid-column: 2; }
  #lc-wp.lc-ui .section-head { gap: 2rem; }
}
@media (max-width: 760px) {
  #lc-wp.lc-ui { --lc-section-gap: 2.75rem; --lc-sticky-top: 5.5rem; font-size: 1.0625rem; }
  #lc-wp.lc-ui .container { width: calc(100% - 2.5rem); }
  #lc-wp.lc-ui h1, #lc-wp.lc-ui .page-hero h1 { font-size: 2.125rem; line-height: 1.16; letter-spacing: -.02em; }
  #lc-wp.lc-ui h2, #lc-wp.lc-ui .article h2 { font-size: 1.625rem; line-height: 1.3; margin-bottom: 1.25rem; }
  #lc-wp.lc-ui h3, #lc-wp.lc-ui .article h3 { font-size: 1.1875rem; line-height: 1.45; }
  #lc-wp.lc-ui .breadcrumb { padding-block: 1.125rem; }
  #lc-wp.lc-ui .page-hero { padding: 1.25rem 0 2.25rem; }
  #lc-wp.lc-ui .page-hero p { font-size: 1.125rem; }
  #lc-wp.lc-ui .page-layout { padding-block: 2.25rem 2.75rem; }
  #lc-wp.lc-ui .section-head, #lc-wp.lc-ui .two-grid, #lc-wp.lc-ui .three-grid, #lc-wp.lc-ui .four-grid, #lc-wp.lc-ui .lc-application-grid { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  #lc-wp.lc-ui .three-grid > :last-child:nth-child(odd) { grid-column: auto; }
  #lc-wp.lc-ui .section-head { gap: 1rem; }
  #lc-wp.lc-ui .solution-card { padding: 1.5rem; }
  #lc-wp.lc-ui .solution-card h3, #lc-wp.lc-ui .resource-row h3 { font-size: 1.375rem; }
  #lc-wp.lc-ui .resource-row { padding-block: 1.5rem; gap: .625rem 1rem; }
  #lc-wp.lc-ui .resource-row p { font-size: 1rem !important; }
  #lc-wp.lc-ui .notice, #lc-wp.lc-ui .lc-section-stack > .notice, #lc-wp.lc-ui[data-lc-page="about"] #focus { padding: 1.25rem; }
  #lc-wp.lc-ui .notice h2 { font-size: 1.5rem; }
  #lc-wp.lc-ui .table-wrap { margin-block: 1.5rem; }
  #lc-wp.lc-ui .technical-table { min-width: 34rem; font-size: 1rem; }
  #lc-wp.lc-ui .technical-table :where(th, td) { padding: .875rem 1rem; }
  #lc-wp.lc-ui .related { grid-template-columns: minmax(0, 1fr); }
  #lc-wp.lc-ui .faq summary { font-size: 1.0625rem; }
  #lc-wp.lc-ui .header-inner { min-height: 4.5rem; }
  #lc-wp.lc-ui .header-inner .brand-logo { width: 12.5rem; }
  #lc-wp.lc-ui .cta-inner { display: block; }
  #lc-wp.lc-ui .cta-band h2 { font-size: 1.75rem; }
  #lc-wp.lc-ui .cta-band .button { margin-top: 1.5rem; }
  #lc-wp.lc-ui .footer-grid { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  #lc-wp.lc-ui .footer-bottom { display: block; }
  #lc-wp.lc-ui .rfq { padding-block: 2rem; }
}
@media (max-width: 480px) {
  #lc-wp.lc-ui .lc-toc > nav { grid-template-columns: minmax(0, 1fr); }
  #lc-wp.lc-ui .buttons { display: grid; grid-template-columns: minmax(0, 1fr); }
  #lc-wp.lc-ui .article .workflow ol { grid-template-columns: minmax(0, 1fr); }
  #lc-wp.lc-ui .hero h1 { font-size: 2.125rem; }
}

/* September refinement: a single reading flow and a quieter shared header. */
#lc-wp.lc-ui .site-header { background: var(--paper); }
#lc-wp.lc-ui .header-inner { min-height: 6.125rem; gap: 2rem; padding-block: .875rem; }
/* The original logo has 5.618% left whitespace; align the caption to its visible artwork. */
#lc-wp.lc-ui .lc-brand-lockup { --lc-logo-width: 16.5rem; --lc-logo-height: 2rem; display: flex; flex-direction: column; align-items: flex-start; width: var(--lc-logo-width); gap: .125rem; flex: 0 0 auto; color: var(--ink); line-height: 1; }
#lc-wp.lc-ui .lc-logo-image { display: block; width: var(--lc-logo-width); height: var(--lc-logo-height); overflow: hidden; }
#lc-wp.lc-ui .header-inner .lc-logo-image .brand-logo { width: var(--lc-logo-width); max-width: none; height: var(--lc-logo-height); object-fit: cover; object-position: center; mix-blend-mode: multiply; }
#lc-wp.lc-ui .lc-brand-slogan { display: block; width: calc(var(--lc-logo-width) * .888); margin-left: calc(var(--lc-logo-width) * .05618); font-size: .65625rem; font-weight: 400; line-height: 1.45; color: #617180; letter-spacing: .008em; white-space: nowrap; }
#lc-wp.lc-ui .nav a:last-child, #lc-wp.lc-ui .mobile-nav nav a:last-child { border-color: #2b538a; color: #fff; background: #2b538a; }
#lc-wp.lc-ui .nav a:last-child:hover, #lc-wp.lc-ui .mobile-nav nav a:last-child:hover { background: #213f66; color: #fff; }
#lc-wp.lc-ui .mobile-nav nav a:last-child { padding: .75rem 1rem; }
#lc-wp.lc-ui #review-outcome.cta-band { margin: 0; background: #0d2e44; color: #fff; }
#lc-wp.lc-ui #review-outcome.cta-band h2 { max-width: none; color: #fff; }
#lc-wp.lc-ui #review-outcome.cta-band p { max-width: none; color: #d2e1ec; }
#lc-wp.lc-ui #review-outcome.cta-band p:last-child { margin-bottom: 0; }
#lc-wp.lc-ui #review-outcome.cta-band a { color: #fff; text-decoration: underline; text-underline-offset: .18em; }
#lc-wp.lc-ui #review-outcome.cta-band a:hover, #lc-wp.lc-ui #review-outcome.cta-band a:focus-visible { text-decoration-thickness: 2px; }

#lc-wp.lc-ui.lc-single-flow { --lc-reading-width: var(--lc-page-width); --lc-section-gap: 4.75rem; }
#lc-wp.lc-ui.lc-single-flow :is(.breadcrumb, .page-hero) { max-width: var(--lc-reading-width); margin-inline: auto; }
#lc-wp.lc-ui.lc-single-flow .page-layout { display: block; padding-top: 2.25rem; }
#lc-wp.lc-ui.lc-single-flow .page-layout > .article { width: 100%; max-width: var(--lc-reading-width); margin-inline: auto; }
#lc-wp.lc-ui.lc-single-flow .contents { position: static; width: 100%; max-width: var(--lc-reading-width); padding: 0; margin: 0 auto 3.5rem; border: 0; border-block: 1px solid var(--line); background: transparent; }
#lc-wp.lc-ui.lc-single-flow .lc-toc > summary { display: block; position: relative; padding: 1.125rem 3rem 1.125rem 0; margin: 0; list-style: none; font-size: .9375rem; line-height: 1.5; color: #2b538a; }
#lc-wp.lc-ui.lc-single-flow .lc-toc > summary::-webkit-details-marker { display: none; }
#lc-wp.lc-ui.lc-single-flow .lc-toc > summary::after { content: "+"; position: absolute; right: .5rem; top: .75rem; font-size: 1.5rem; font-weight: 400; }
#lc-wp.lc-ui.lc-single-flow .lc-toc[open] > summary::after { content: "−"; }
#lc-wp.lc-ui.lc-single-flow .lc-toc[open] > nav { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; max-height: none; padding: 0 0 1.25rem; overflow: visible; }
#lc-wp.lc-ui.lc-single-flow .lc-toc:not([open]) > nav { display: none; }
#lc-wp.lc-ui.lc-single-flow .contents a { font-size: .9375rem; padding: .375rem 0; border-radius: 0; }
#lc-wp.lc-ui.lc-single-flow .article > section > :is(p, ul, ol) { max-width: 76ch; }
#lc-wp.lc-ui.lc-single-flow .article h2 { max-width: 52rem; font-size: clamp(1.875rem, 3vw, 2.5rem); line-height: 1.18; font-weight: 700; }
#lc-wp.lc-ui.lc-single-flow .article .workflow ol { grid-template-columns: minmax(0, 1fr); }
#lc-wp.lc-ui[data-lc-page="oem-manufacturing"] .article { counter-reset: lc-oem-section; }
#lc-wp.lc-ui[data-lc-page="oem-manufacturing"] .article > section { counter-increment: lc-oem-section; }
#lc-wp.lc-ui[data-lc-page="oem-manufacturing"] .article > section > h2::before { content: counter(lc-oem-section, decimal-leading-zero); display: block; margin-bottom: 1rem; font-size: .8125rem; font-weight: 700; line-height: 1.4; letter-spacing: .12em; color: #2b538a; }
#lc-wp.lc-ui[data-lc-page="oem-manufacturing"] .article > section + section { padding-top: 3.5rem; border-top: 1px solid var(--line); }
#lc-wp.lc-ui .lc-scope-focus { margin: 2rem 0; padding: 2rem 2.25rem; background: #213f66; border-left: .3rem solid #7ea6d9; color: #fff; }
#lc-wp.lc-ui .lc-scope-focus p { max-width: 68ch; margin: 0; color: #f1f5fa; font-size: 1.0625rem; line-height: 1.65; }
#lc-wp.lc-ui .lc-scope-focus .lc-focus-title { margin-bottom: .75rem; font-size: clamp(1.625rem, 2.8vw, 2.125rem); font-weight: 700; line-height: 1.2; color: #fff; letter-spacing: -.02em; }
#lc-wp.lc-ui .lc-scope-packages { margin-top: 2.5rem; }
#lc-wp.lc-ui .lc-scope-packages h3 { font-size: 1.5rem; margin: 0 0 .5rem; color: var(--ink); }
#lc-wp.lc-ui .lc-packages-caption { font-size: .9375rem; color: #526372; margin: 0 0 1.5rem; }
#lc-wp.lc-ui .lc-package-list { margin: 0; padding: 0; counter-reset: lc-package; border-top: 2px solid #2b538a; }
#lc-wp.lc-ui .lc-package { display: block; margin: 0; padding: 1.625rem 1.5rem; border-bottom: 1px solid var(--line); counter-increment: lc-package; }
#lc-wp.lc-ui .lc-package:nth-child(odd) { background: #f4f7fa; }
#lc-wp.lc-ui .lc-package dt { margin: 0 0 .625rem; padding: 0; font-size: 1.25rem; line-height: 1.4; font-weight: 700; color: var(--ink); }
#lc-wp.lc-ui .lc-package dt::before { content: counter(lc-package, decimal-leading-zero) " / "; font-size: .875rem; font-weight: 700; letter-spacing: .06em; color: #2b538a; }
#lc-wp.lc-ui .lc-package dd { max-width: 76ch; margin: 0; padding: 0; color: #435765; font-size: 1.0625rem; line-height: 1.65; }
@media (max-width: 1100px) {
  #lc-wp.lc-ui .nav { display: none; }
  #lc-wp.lc-ui .mobile-nav { display: block; }
}
@media (max-width: 760px) {
  #lc-wp.lc-ui.lc-single-flow { --lc-section-gap: 3rem; }
  #lc-wp.lc-ui .header-inner { min-height: 5.25rem; gap: .75rem; padding-block: .75rem; }
  #lc-wp.lc-ui .lc-brand-lockup { --lc-logo-width: 14.5rem; --lc-logo-height: 1.75rem; }
  #lc-wp.lc-ui .lc-brand-slogan { font-size: .65625rem; letter-spacing: 0; }
  #lc-wp.lc-ui.lc-single-flow .contents { margin-bottom: 2.5rem; }
  #lc-wp.lc-ui.lc-single-flow .article h2 { font-size: 1.875rem; }
  #lc-wp.lc-ui.lc-single-flow .lc-toc[open] > nav { display: block; }
  #lc-wp.lc-ui.lc-single-flow .contents a { padding: .625rem 0; }
  #lc-wp.lc-ui[data-lc-page="oem-manufacturing"] .article > section + section { padding-top: 2.5rem; }
  #lc-wp.lc-ui .lc-scope-focus { padding: 1.5rem; }
  #lc-wp.lc-ui .lc-package { padding: 1.375rem 1rem; }
  #lc-wp.lc-ui .lc-package dt { font-size: 1.125rem; }
  #lc-wp.lc-ui .lc-package dd { font-size: 1rem; }
}
@media (max-width: 380px) {
  #lc-wp.lc-ui .lc-brand-lockup { --lc-logo-width: 12.5rem; --lc-logo-height: 1.5rem; max-width: calc(100% - 4.25rem); }
  #lc-wp.lc-ui .lc-brand-slogan { font-size: .5625rem; letter-spacing: 0; white-space: nowrap; }
}




/* Keep summaries aligned across the wide comparison cards. */
#lc-wp.lc-ui .resource-row h3 { min-height: 3.9em; }
#lc-wp.lc-ui .lc-application-topic:not(:first-child) h3 { min-height: 2.8em; }
@media (max-width: 760px) {
  #lc-wp.lc-ui .resource-row h3, #lc-wp.lc-ui .lc-application-topic:not(:first-child) h3 { min-height: 0; }
}

/* Shared content composition for the 1240px page frame. */
#lc-wp.lc-ui .page-hero { padding-block: 2rem 3rem; }
#lc-wp.lc-ui .page-hero h1 { max-width: none; font-size: clamp(2.25rem, 4.1vw, 3.5rem); line-height: 1.12; }
#lc-wp.lc-ui .page-hero p { max-width: none; }
#lc-wp.lc-ui .lc-hero-copy { display: grid; gap: 1rem; }
#lc-wp.lc-ui .page-hero .lc-hero-lead { margin: 0; font-size: clamp(1.25rem, 1.85vw, 1.5rem); line-height: 1.55; color: var(--ink); }
#lc-wp.lc-ui .page-hero .lc-hero-detail { margin: 0; font-size: 1.125rem; line-height: 1.8; }
#lc-wp.lc-ui .hero { padding-block: 4rem 4.5rem; }
#lc-wp.lc-ui .hero h1 { max-width: none; font-size: clamp(2.5rem, 4.8vw, 4.25rem); line-height: 1.1; margin-bottom: 1.5rem; }
#lc-wp.lc-ui .hero h1 br { display: none; }
#lc-wp.lc-ui .hero .lead { max-width: none; font-size: 1.375rem; line-height: 1.65; }
#lc-wp.lc-ui .section-head { display: block; margin-bottom: 2rem; }
#lc-wp.lc-ui .section-head h2 { max-width: none; margin-bottom: 1rem; }
#lc-wp.lc-ui .section-head p { max-width: none; margin-bottom: 0; font-size: 1.125rem; }
#lc-wp.lc-ui .lc-section-stack > .lc-section h2,
#lc-wp.lc-ui.lc-single-flow .article h2 { max-width: none; font-size: clamp(1.875rem, 2.6vw, 2.25rem); line-height: 1.22; }
#lc-wp.lc-ui.lc-single-flow .article > section > :is(p, ul, ol),
#lc-wp.lc-ui .lc-section-stack > .lc-section:not(.lc-solutions-grid):not(.lc-resource-index) > p,
#lc-wp.lc-ui .lc-package dd,
#lc-wp.lc-ui .lc-scope-focus p { max-width: none; }
#lc-wp.lc-ui .article > section + section { margin-top: 3rem; padding-top: 2rem; border-top: 1px solid var(--line); }
#lc-wp.lc-ui[data-lc-page="oem-manufacturing"] .article > section + section { padding-top: 2rem; }
#lc-wp.lc-ui .article > section > h2 { margin-bottom: 1.25rem; }
#lc-wp.lc-ui .article > section > h2::before { content: ""; display: block; width: 2.5rem; height: 3px; margin-bottom: 1rem; background: #2b538a; }
#lc-wp.lc-ui[data-lc-page="oem-manufacturing"] .article > section > h2::before { content: counter(lc-oem-section, decimal-leading-zero); width: auto; height: auto; background: transparent; }
#lc-wp.lc-ui.lc-single-flow .contents { margin-bottom: 2.5rem; }
#lc-wp.lc-ui .two-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
#lc-wp.lc-ui .two-grid > * { padding: 1.5rem 1.75rem; background: var(--paper); border: 1px solid var(--line); }
#lc-wp.lc-ui .two-grid > * > :first-child { margin-top: 0; }
#lc-wp.lc-ui .two-grid > * > :last-child { margin-bottom: 0; }
#lc-wp.lc-ui .three-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#lc-wp.lc-ui .three-grid > :last-child:nth-child(odd) { grid-column: auto; }
#lc-wp.lc-ui .solution-card { display: flex; flex-direction: column; padding: 1.75rem; border: 1px solid var(--line); border-top: 3px solid #2b538a; background: #fff; }
#lc-wp.lc-ui .solution-card h3 { min-height: 3.9rem; font-size: 1.5rem; }
#lc-wp.lc-ui .solution-card > p { flex-grow: 1; }
#lc-wp.lc-ui .solution-card > .link { margin-top: auto; padding-top: 1rem; border-top: 1px solid var(--line); }
#lc-wp.lc-ui .four-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
#lc-wp.lc-ui .four-grid .audience { padding: 1.5rem; border: 1px solid var(--line); }
#lc-wp.lc-ui .four-grid .audience h3 { margin-top: .75rem; }
#lc-wp.lc-ui .resource-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; border: 0; }
#lc-wp.lc-ui .resource-row { display: flex; flex-direction: column; gap: 1rem; padding: 1.75rem; border: 1px solid var(--line); border-top: 3px solid #2b538a; background: #fff; color: var(--ink); }
#lc-wp.lc-ui .resource-row > span { padding: 0; font-size: .8125rem; font-weight: 700; letter-spacing: .1em; color: #2b538a; }
#lc-wp.lc-ui .resource-row > div { flex: 1; width: 100%; }
#lc-wp.lc-ui .resource-row h3 { font-size: 1.4375rem; line-height: 1.3; }
#lc-wp.lc-ui .resource-row p { max-width: none; font-size: 1rem; margin-top: 1rem; }
#lc-wp.lc-ui .resource-row small { display: flex; justify-content: space-between; gap: 1rem; width: 100%; margin-top: .5rem; padding-top: 1rem; border-top: 1px solid var(--line); color: #526372; }
#lc-wp.lc-ui .resource-row:hover, #lc-wp.lc-ui .resource-row:focus-visible { background: var(--paper); border-color: #2b538a; }
#lc-wp.lc-ui .lc-application-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
#lc-wp.lc-ui .lc-application-topic { padding: 1.5rem; border: 1px solid var(--line); background: #fff; }
#lc-wp.lc-ui .lc-application-topic:first-child { grid-column: 1 / -1; padding: 1.75rem 2rem; background: var(--paper); border-left: 3px solid #2b538a; }
#lc-wp.lc-ui .lc-application-topic:first-child h3 { font-size: 1.375rem; }
#lc-wp.lc-ui .lc-application-topic h3 { margin-top: 0; line-height: 1.4; }
#lc-wp.lc-ui .lc-application-topic p { max-width: none; }
#lc-wp.lc-ui .technical-table { table-layout: fixed; font-size: 1.0625rem; line-height: 1.6; }
#lc-wp.lc-ui .technical-table :where(th, td) { padding: 1.25rem 1.5rem; }
#lc-wp.lc-ui .technical-table :is(th, td):first-child { width: 25%; }
#lc-wp.lc-ui .technical-table:has(thead th:nth-child(3)) :is(th, td):first-child { width: 23%; }
#lc-wp.lc-ui .technical-table:has(thead th:nth-child(4)) { min-width: 48rem; }
#lc-wp.lc-ui .technical-table:has(thead th:nth-child(4)) :is(th, td):first-child { width: 20%; }
#lc-wp.lc-ui .workflow, #lc-wp.lc-ui .article .workflow { padding: 1.75rem 2rem; margin-block: 2rem; background: var(--paper); border: 1px solid var(--line); }
#lc-wp.lc-ui .workflow figcaption { margin-bottom: 1.5rem; font-size: .875rem; line-height: 1.5; }
#lc-wp.lc-ui .workflow ol, #lc-wp.lc-ui.lc-single-flow .article .workflow ol { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; padding: 0; margin: 0; list-style: none; counter-reset: lc-step; }
#lc-wp.lc-ui .workflow ol:has(> li:nth-child(6)):not(:has(> li:nth-child(7))) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#lc-wp.lc-ui .workflow li { position: relative; display: block; margin: 0; padding: 1rem 0 0; border: 0; border-top: 2px solid #9bb3cf; background: transparent; font-size: 1rem; line-height: 1.5; counter-increment: lc-step; }
#lc-wp.lc-ui .workflow li::before { content: counter(lc-step, decimal-leading-zero); display: block; width: auto; height: auto; margin-bottom: .5rem; font-size: .8125rem; color: #2b538a; font-weight: 700; }
#lc-wp.lc-ui .workflow li::after { content: none; }
#lc-wp.lc-ui .related { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#lc-wp.lc-ui .related a { min-height: 5.5rem; padding: 1.25rem 1.5rem; align-items: center; border-top: 3px solid #2b538a; }
#lc-wp.lc-ui .faq details { padding: 1.375rem 0; }
#lc-wp.lc-ui .faq details p { max-width: none; }
#lc-wp.lc-ui[data-lc-page="about"] #focus { padding: 2rem 2.25rem; }
#lc-wp.lc-ui[data-lc-page="about"] #group { padding: 2rem 2.25rem; background: var(--paper); border-left: 3px solid #2b538a; }
#lc-wp.lc-ui[data-lc-page="contact"] #first-brief { margin-top: 3rem !important; padding: 2rem; background: var(--paper); border: 1px solid var(--line); }
#lc-wp.lc-ui[data-lc-page="contact"] #first-brief ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; padding: 0; list-style: none; }
#lc-wp.lc-ui[data-lc-page="contact"] #first-brief li { margin: 0; padding: 1rem 0 0; border-top: 2px solid #9bb3cf; font-size: 1rem; line-height: 1.65; }
#lc-wp.lc-ui[data-lc-page="contact"] #first-brief details { margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px solid var(--line); }
#lc-wp.lc-ui .rfq fieldset { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; margin-bottom: 2.75rem; padding: 1.5rem 0 2rem; border: 0; border-bottom: 1px solid var(--line); }
#lc-wp.lc-ui .rfq legend { display: block; float: none; width: 100%; padding: 0; margin: 0; font-size: 1.625rem; line-height: 1.35; font-weight: 700; }
#lc-wp.lc-ui .rfq .rfq-field { min-width: 0; margin: 0; }
#lc-wp.lc-ui .rfq .rfq-field:has(textarea),
#lc-wp.lc-ui .rfq fieldset > details { grid-column: 1 / -1; }
#lc-wp.lc-ui .rfq .rfq-field:has(#requirement) { grid-column: span 2; }
#lc-wp.lc-ui .rfq fieldset > .review-note { grid-column: span 2; margin: 0; padding-top: 1.5rem; align-self: center; }
#lc-wp.lc-ui .rfq :where(input:not([type="checkbox"]), select, textarea) { width: 100%; max-width: 100%; box-sizing: border-box; }
#lc-wp.lc-ui .rfq textarea { min-height: 10rem; resize: vertical; }
#lc-wp.lc-ui .rfq fieldset > details { padding: 1.25rem 1.5rem; background: var(--paper); border: 1px solid var(--line); }
#lc-wp.lc-ui .rfq fieldset > details[open] > .rfq-field { margin-top: 1.25rem; }
#lc-wp.lc-ui .rfq .checkbox-row { margin-bottom: 1.5rem; }
@media (max-width: 1079px) {
  #lc-wp.lc-ui .four-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #lc-wp.lc-ui .resource-list, #lc-wp.lc-ui .three-grid, #lc-wp.lc-ui .lc-application-grid { gap: 1rem; }
  #lc-wp.lc-ui .solution-card, #lc-wp.lc-ui .resource-row, #lc-wp.lc-ui .lc-application-topic { padding: 1.25rem; }
}
@media (max-width: 760px) {
  #lc-wp.lc-ui .hero { padding-block: 2.75rem 3rem; }
  #lc-wp.lc-ui .hero h1, #lc-wp.lc-ui .page-hero h1 { font-size: 2.125rem; }
  #lc-wp.lc-ui .hero .lead, #lc-wp.lc-ui .page-hero .lc-hero-lead { font-size: 1.1875rem; }
  #lc-wp.lc-ui .page-hero .lc-hero-detail { font-size: 1rem; line-height: 1.75; }
  #lc-wp.lc-ui .page-hero { padding-block: 1.25rem 2.25rem; }
  #lc-wp.lc-ui .lc-section-stack > .lc-section h2, #lc-wp.lc-ui.lc-single-flow .article h2 { font-size: 1.75rem; }
  #lc-wp.lc-ui .article > section + section { margin-top: 2.5rem; padding-top: 1.75rem; }
  #lc-wp.lc-ui .three-grid, #lc-wp.lc-ui .four-grid, #lc-wp.lc-ui .resource-list, #lc-wp.lc-ui .lc-application-grid, #lc-wp.lc-ui .related,
  #lc-wp.lc-ui .workflow ol, #lc-wp.lc-ui.lc-single-flow .article .workflow ol,
  #lc-wp.lc-ui .workflow ol:has(> li:nth-child(6)):not(:has(> li:nth-child(7))),
  #lc-wp.lc-ui[data-lc-page="contact"] #first-brief ul,
  #lc-wp.lc-ui .rfq fieldset { grid-template-columns: minmax(0, 1fr); }
  #lc-wp.lc-ui .solution-card h3 { min-height: 0; }
  #lc-wp.lc-ui .two-grid > *, #lc-wp.lc-ui .lc-application-topic:first-child,
  #lc-wp.lc-ui[data-lc-page="about"] #focus, #lc-wp.lc-ui[data-lc-page="about"] #group,
  #lc-wp.lc-ui[data-lc-page="contact"] #first-brief,
  #lc-wp.lc-ui .workflow, #lc-wp.lc-ui .article .workflow { padding: 1.5rem; }
  #lc-wp.lc-ui .technical-table { font-size: 1rem; }
  #lc-wp.lc-ui .technical-table :where(th, td) { padding: 1rem; }
  #lc-wp.lc-ui .rfq fieldset > .review-note, #lc-wp.lc-ui .rfq .rfq-field:has(#requirement) { grid-column: auto; padding-top: 0; }
  #lc-wp.lc-ui .rfq textarea { min-height: 12rem; }
}
