/* Tokens shared by the owned components. Legacy migration is tracked separately. */
:root {
  --pp4-ink: #1d1d1f;
  --pp4-copy: #51565b;
  --pp4-accent: #0b6f69;
  --pp4-surface: #f5f5f7;
  --pp4-line: #d2d2d7;
  --pp4-xs: 12px;
  --pp4-sm: 14px;
  --pp4-body: 17px;
  --pp4-title: 21px;
  --pp4-heading: 28px;
  --pp4-section: 40px;
  --pp4-display: 56px;
  --pp4-large: 80px;
  --pp4-radius: 8px;
  --pp4-card-radius: 16px;
  --pp4-pill: 999px;
  --pp4-content: 1120px;
  --pp4-gutter: 20px;
  --pp-gutter: var(--pp4-gutter);
  --pp4-ease: cubic-bezier(.22,1,.36,1);
  --pp4-feedback: 150ms;
  --pp4-change: 240ms;
  --pp4-enter: 400ms;
  --pp-text-base: var(--pp4-body);
  --pp-text-lead: var(--pp4-title);
  --pp-text-title: var(--pp4-heading);
  --pp-text-section: var(--pp4-section);
  --pp-text-display: var(--pp4-display);
  --pp-text-hero: var(--pp4-display);
  --pp-radius-card: var(--pp4-card-radius);
  --pp-radius-large: var(--pp4-card-radius);
}
@media(min-width:735px) and (max-width:1159px) {:root{--pp4-gutter:32px}}

/* These overrides are restricted to the unrecovered third-party build. */
@layer pcba-component-fixes {
  body.pp4-site [hidden] {display:none !important}
  body.pp4-site:has(.hp-cookie-banner.is-visible) :is(.whatsapp-float,.back-to-top,.mobile-conversion-bar,#pp-rfq-dock) {visibility:hidden !important;pointer-events:none !important}
  body.pp4-site dialog#lightbox {border:0 !important;margin:0 !important;width:100vw !important;max-width:none !important;height:100dvh !important;max-height:none !important;background:transparent !important;box-sizing:border-box}
  body.pp4-site dialog#lightbox:not([open]) {display:none !important}
  body.pp4-site {font-size:var(--pp4-body) !important;overflow-wrap:anywhere}
  body.pp4-site :is(.hero-content,.section-header,.faq-question-left,.process-detail>div,.cap-item,.stat,.about-hl,.service-card-body) {min-width:0 !important}
  body.pp4-site h1 {
    font-size: var(--pp4-display) !important;
    line-height: 1.08 !important;
  }
  body.pp4-site main :is(p,li,dd,dt) {font-size:var(--pp4-body) !important}
  body.pp4-site #hero .hero-desc {font-size:var(--pp4-body) !important}
  body.pp4-site main :is(button,input,select,textarea) {font-size:var(--pp4-body) !important}
  body.pp4-site main label {font-size:var(--pp4-sm) !important}
  body.pp4-site .est-wrap {width:calc(100% - 2*var(--pp4-gutter)) !important}
  body.pp4-site:is(:has(#not-found-title),:has(#offline-title)) :is(main,header) {
    width:calc(100% - 2*var(--pp4-gutter)) !important;
    max-width:var(--pp4-content) !important;
    margin-inline:auto !important;
    padding-inline:0 !important;
    box-sizing:border-box;
  }
  body.pp4-site .state-layout {grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr) !important;gap:48px !important}
  body.pp4-site .state-layout>div {order:-1}
  body.pp4-site .state-code {font-size:var(--pp4-large) !important}
  body.pp4-site main h2 {font-size:var(--pp4-section) !important}
  body.pp4-site main h3 {font-size:var(--pp4-title) !important}
  body.pp4-site main :is(.section-kicker,.section-label,.hs-kicker,.case-section-kicker,.eyebrow,.blog-category,.blog-meta,.library-hero__proof,.library-hero__intro,.hs-buyer-strip,.case-search>span,.case-sort>span,.case-results-count,.ep-open-note,.ao-step,.case-card__meta,.blog-latest-meta) {
    font-size:var(--pp4-sm) !important;
    color:var(--pp4-copy) !important;
    -webkit-text-fill-color:currentColor !important;
  }
  body.pp4-site main :is(figcaption,.library-hero__intro,.case-results-status,.hs-buyer-strip strong) {
    font-size:var(--pp4-sm) !important;
    color:var(--pp4-copy) !important;
    -webkit-text-fill-color:currentColor !important;
  }
  body.pp4-site main :is(.library-hero__proof>span,#caseResultStatus,.hs-visual-strip figcaption>span,.case-scope-label,.case-matrix-hint,.hs-next-links,.hs-next-links>*,.ao-steps>*,#quote-entry small,#estDropNote,.est-price>span:last-child) {
    color:var(--pp4-copy) !important;
    -webkit-text-fill-color:currentColor !important;
    font-size:var(--pp4-sm) !important;
  }
  body.pp4-site :is(.fade-up,.reveal,.ds-reveal,.ds-group-item,[data-ds-reveal],.reveal-on-scroll,.ep-media-reveal) {
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    animation:none !important;
  }
  body.pp4-site .blog-latest-heading h2 {font-size:var(--pp4-heading) !important}
  body.pp4-site .hs-buyer-strip :is(span,strong) {color:var(--pp4-copy) !important;font-size:var(--pp4-sm) !important}
  body.pp4-site .ab-stat strong {font-size:var(--pp4-heading) !important}
  body.pp4-site main a {min-height:44px !important;min-width:44px !important}
  body.pp4-site main h3 a {display:inline-flex !important;align-items:center}
  body.pp4-site main :is(p,dd,td,th,label,span,figcaption) a {min-height:0 !important;min-width:0 !important}
  body.pp4-site :is(.learn-more,.cert-item,.nda-request-text,.svc-link,.journey-text-link) {min-height:44px !important;min-width:44px !important;display:inline-flex !important;align-items:center !important}
  body.pp4-site :is(.journey-grid,.blog-grid,.cert-row,.cap-list--cards,.seo-link-grid,.detail-gallery__grid,.pc-grid,.hs-grid,[id=caseGrid],.ep-grid,.other-industries) {
    --pp4-columns:3;
    display:flex !important;flex-wrap:wrap;justify-content:center;gap:24px !important;
  }
  body.pp4-site :is(.journey-grid,.blog-grid,.cert-row,.cap-list--cards,.seo-link-grid,.detail-gallery__grid,.pc-grid,.hs-grid,[id=caseGrid],.ep-grid,.other-industries)>* {
    flex:0 1 calc((100% - (var(--pp4-columns) - 1)*24px)/var(--pp4-columns));min-width:0;
  }
  body.pp4-site #caseGrid>.case-library-empty {flex-basis:100%;max-width:100%}
  body.pp4-site .detail-gallery__grid {--pp4-columns:2}
  @media(min-width:1001px) {body.pp4-site :is(.pc-grid,.ep-grid,.hs-grid):has(>:last-child:nth-child(2)),body.pp4-site :is(.pc-grid,.ep-grid,.hs-grid):has(>:last-child:nth-child(4)){--pp4-columns:2}}
  @media(max-width:1000px) {body.pp4-site :is(.journey-grid,.blog-grid,.cert-row,.cap-list--cards,.seo-link-grid,.detail-gallery__grid,.pc-grid,.hs-grid,[id=caseGrid],.ep-grid,.other-industries){--pp4-columns:2}}
  @media(max-width:734px) {body.pp4-site :is(.journey-grid,.blog-grid,.cert-row,.cap-list--cards,.seo-link-grid,.detail-gallery__grid,.pc-grid,.hs-grid,[id=caseGrid],.ep-grid,.other-industries){--pp4-columns:1}}
  body.pp4-site main :is(p,li,dd,figcaption) a {text-decoration:underline !important}
  body.pp4-site .case-cta {background:var(--pp4-surface) !important}
  body.pp4-site .case-cta :is(h2,p,.section-kicker) {color:var(--pp4-ink) !important;-webkit-text-fill-color:currentColor !important}
  body.pp4-site :is(.btn-primary,.btn-primary-inline,.hs-btn-primary,.tk-btn-primary,.button--dark,.button--light,.ao-button-primary,.article-cta-button,.svc-button:not(.svc-button-secondary),.pc-button:not(.pc-button-secondary),.msc-button:not(.msc-secondary),.est-btn:not(.ghost),.site-quote-button,.inline-rfq__submit,.ab-button:not(.ab-button-secondary)) {
    background:var(--pp4-ink) !important;
    color:white !important;
    -webkit-text-fill-color:currentColor !important;
    border:1px solid var(--pp4-ink) !important;
    border-radius:var(--pp4-pill) !important;
  }
  body.pp4-site :is(.btn-secondary,.btn-ghost,.hs-btn-ghost,.tk-btn-secondary,.button--quiet,.ao-button-secondary,.svc-button-secondary,.pc-button-secondary,.msc-secondary,.est-btn.ghost,.ep-btn-secondary) {
    background:transparent !important;
    color:var(--pp4-ink) !important;
    -webkit-text-fill-color:currentColor !important;
    border:1px solid var(--pp4-line) !important;
    border-radius:var(--pp4-pill) !important;
  }
  body.pp4-site :is(.btn-primary,.btn-primary-inline,.btn-secondary,.btn-ghost,.hs-btn,.tk-btn,.button,.ao-button,.article-cta-button,.svc-button,.pc-button,.msc-button,.est-btn,.site-quote-button,.inline-rfq__submit,.ab-button,.ep-btn,.filter-chip,.filter-btn,.case-filter-button) {
    min-height:44px !important;
    font-size:var(--pp4-sm) !important;
    font-family:inherit !important;
  }
  body.pp4-site main :is(.ia-page-index,.hs-mini-nav,.seo-inline-links,.project-discovery,.ep-links,.library-hero__actions) a {
    min-height:44px !important;
    min-width:44px !important;
  }
  body.pp4-site .skip-link {min-height:44px !important}
  body.pp4-site .skip-link:focus {min-width:44px !important;min-height:44px !important;height:auto !important;width:auto !important;display:inline-flex !important;align-items:center;box-sizing:border-box;clip:auto !important;clip-path:none !important}
  body.pp4-site main .ux-rfq-download a {min-height:44px !important;display:inline-flex !important;align-items:center}
  body.pp4-site main [data-project-discovery] a,
  body.pp4-site #health-electronics-references>p>a {min-height:44px !important;display:inline-flex !important;align-items:center;max-width:100%;box-sizing:border-box}
  body.pp4-site main :is(label:has(input[type=checkbox]),.privacy-consent label) {min-height:44px !important;display:inline-flex;align-items:center}
  body.pp4-site .state-code {color:var(--pp4-accent) !important}
  body.pp4-site main :is(.site-ia-breadcrumb,.breadcrumb) {font-size:var(--pp4-xs) !important;line-height:20px !important}
  body.pp4-site main :is(.site-ia-breadcrumb,.breadcrumb) ol {margin:0 !important;padding:0 !important;list-style:none}
  body.pp4-site main:has(>.site-ia-breadcrumb) {padding-top:64px !important}
  body.pp4-site main :is(.site-ia-breadcrumb,.breadcrumb) li {font-size:var(--pp4-xs) !important;line-height:20px !important}
  body.pp4-site main :is(.site-ia-breadcrumb,.breadcrumb) a {display:inline !important;min-height:0 !important}
  @media(max-width:734px) {
    body.pp4-site .state-layout {grid-template-columns:minmax(0,1fr) !important;gap:24px !important}
    body.pp4-site h1 {font-size:var(--pp4-section) !important}
    body.pp4-site :is(.btn-primary,.btn-secondary,.btn-ghost,.hs-btn,.tk-btn,.button,.ao-button,.article-cta-button,.svc-button,.pc-button,.msc-button,.est-btn,.site-quote-button,.inline-rfq__submit,.ab-button,.ep-btn) {min-height:48px !important}
  }
}

body.pp4-site main a:hover {text-decoration:underline;text-underline-offset:3px}
body.pp4-site main :is(.ia-page-index,.hs-mini-nav,.seo-inline-links,.project-discovery,.ep-links) a {
  display:inline-flex;align-items:center;
}
body.pp4-site :is(.consent-label,.ao-consent,.rfq-consent) {min-height:44px;align-items:center}
body.pp4-site .profile-link {font:inherit;border:0;background:none;color:var(--pp4-accent);text-align:left;min-height:44px;padding:8px 0;cursor:pointer}
body.pp4-site dialog#lightbox::backdrop {background:#0009}
body.pp4-site .blog-latest {max-width:var(--pp4-content);margin:0 auto;padding:0 0 48px}
body.pp4-site .blog-latest-heading {display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}
body.pp4-site .blog-latest-heading h2 {margin:0;font-size:var(--pp4-heading)}
body.pp4-site .blog-latest-heading>a {min-height:44px;display:inline-flex;align-items:center;color:var(--pp4-accent)}
body.pp4-site .blog-latest-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
body.pp4-site .blog-latest-card {display:flex;flex-direction:column;min-width:0;border-top:1px solid var(--pp4-line);padding-top:20px}
body.pp4-site .blog-latest-meta {line-height:1.5;margin:0 0 12px;color:var(--pp4-copy)}
body.pp4-site .blog-latest-card h3 {margin:0 0 12px;line-height:1.25}
body.pp4-site .blog-latest-card h3 a {color:var(--pp4-ink);text-decoration:none}
body.pp4-site .blog-latest-card p {margin:0 0 16px;line-height:1.6;color:var(--pp4-copy)}
body.pp4-site .blog-latest-card>a {min-height:44px;display:inline-flex;align-items:center;color:var(--pp4-accent);margin-top:auto;width:fit-content}
body.pp4-site .blog-workflow {max-width:var(--pp4-content);margin:24px auto 40px}
body.pp4-site .blog-workflow>summary {font-size:var(--pp4-body);min-height:44px;padding:12px 0;border-block:1px solid var(--pp4-line)}
body.pp4-site .blog-workflow .pp-guide-flow {margin:24px 0}
body.pp4-site .blog-page-hero.pp4-blog-hero {padding:24px 0 32px;min-height:0}
body.pp4-site .pp4-blog-hero>.section-container {display:block}
body.pp4-site .pp4-blog-hero .blog-hero-copy {max-width:880px}
body.pp4-site .pp4-blog-hero .section-label {margin-bottom:16px}
body.pp4-site .pp4-blog-hero .section-title {margin:0 0 20px;padding:0;border:0;max-width:none}
body.pp4-site .pp4-blog-hero .section-desc {margin:0;max-width:52em}
@media(max-width:734px) {
  body.pp4-site .blog-latest-grid {grid-template-columns:minmax(0,1fr);gap:28px}
  body.pp4-site .blog-latest-heading {align-items:flex-start;gap:12px}
  body.pp4-site .blog-latest-heading h2 {font-size:var(--pp4-heading)}
}

/* Flex wrapping centers the incomplete final row, including filtered collections. */
body.pp4-site .pp4-balanced-grid {--pp4-columns:3;display:flex;flex-wrap:wrap;justify-content:center;gap:24px}
body.pp4-site .pp4-balanced-grid>* {flex:0 1 calc((100% - (var(--pp4-columns) - 1)*24px)/var(--pp4-columns));min-width:0}
@media(max-width:1000px) {body.pp4-site .pp4-balanced-grid{--pp4-columns:2}}
@media(max-width:734px) {body.pp4-site .pp4-balanced-grid{--pp4-columns:1}}
