/* Manufacturer presentation library: scoped to preserve approved site layouts. */
body.solutions-page .brand-spine { display: none; }
.solution-vendor-page .page > main::before, .solution-document-page .page > main::before { display: none; }
.solutions-page { --solution-muted: #b6c2d3; --solution-line: #35445c; }
.solutions-page .solutions-hero { min-height: 560px; }
.solutions-page .solutions-hero h1 { max-width: 870px; }
.solutions-page .solutions-hero .hero-subtitle { max-width: 620px; }
.solutions-page .solutions-features { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.solutions-features .feature-mini { min-height: 92px; }
.solutions-page .solution-library { background: linear-gradient(125deg, #111e33, #10192c); }
.solutions-page #solutionManufacturers { scroll-margin-top: 92px; }
.solutions-page .solutions-section-head { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 28px; }
.solutions-page .solutions-section-head h2 { font-size: clamp(28px, 3.5vw, 46px); margin: 0 0 12px; line-height: 1.12; }
.solutions-page .solutions-section-head p { margin: 0; color: var(--solution-muted); line-height: 1.55; }
.solutions-page .solutions-section-head .eyebrow { margin-bottom: 15px; }
.solutions-search { display: flex; position: relative; flex: 0 1 310px; min-width: 260px; }
.solutions-page .solutions-search input { background: #1b293e; color: #f4f7fb; min-height: 48px; padding: 13px 52px 13px 15px; border: 1px solid #46556c; border-radius: 9px; }
.solutions-page .solutions-search input::placeholder { color: #b6c2d3; }
.solutions-search button { position: absolute; top: 2px; right: 2px; width: 44px; height: 44px; display: grid; place-items: center; background: transparent; color: #d9e3ef; border: 0; border-radius: 8px; cursor: pointer; }
.solutions-search button svg { width: 21px; height: 21px; stroke: currentColor; fill: none; stroke-width: 1.6; }
.solutions-page .solution-vendor-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
/* Manufacturer entries reuse the approved partner-card and logo-tile surfaces. */
.solutions-page .solution-vendor-card { text-decoration: none; }
.solutions-page .solution-logo { display: grid; place-items: center; min-height: 150px; padding: 28px; border-radius: 10px; background: linear-gradient(140deg, #fff, #e8edf4); }
.solutions-page .solution-logo.solution-logo-dark { background: #050505; }
.solutions-page .solution-logo img { display: block; width: 80%; max-width: 250px; height: auto; max-height: 94px; object-fit: contain; }
.solution-vendor-card-body { display: flex; flex-direction: column; flex: 1; }
.solution-card-heading { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.solutions-page .solution-card-heading h3 { margin: 0; font-size: 24px; }
.solution-card-heading > span { color: #b9c5d6; font-size: 11px; }
.solutions-page .solution-vendor-card p { color: var(--solution-muted); font-size: 14px; margin: 12px 0 18px; line-height: 1.55; }
.solution-card-industries { display: flex; flex-wrap: wrap; gap: 7px; color: #d3deec; margin-bottom: 24px; }
.solution-card-industries span { font-size: 11px; padding: 5px 8px; background: #2b354d; border: 1px solid #465069; border-radius: 5px; }
.solutions-page .solution-card-link { color: #f2c0d2; display: inline-flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 13px; font-weight: 650; margin-top: auto; }
.solution-card-link > span { color: #ed709e; font-size: 19px; }
.solutions-page .solution-empty { grid-column: 1 / -1; border: 1px solid #43526a; border-radius: 14px; padding: 32px; background: #1a273c; }
.solution-empty p { color: var(--solution-muted); }
.solutions-page .solution-vendor-intro { padding: 36px 0 44px; background: radial-gradient(ellipse at 95% 20%, #183048, transparent 65%), #0e1b2e; }
.solutions-page .solution-vendor-intro--photo { position: relative; isolation: isolate; overflow: hidden; background: #0e1b2e; }
.solution-vendor-background { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.solution-vendor-intro--photo::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, rgba(8, 20, 37, .87), rgba(8, 20, 37, .64) 55%, rgba(8, 20, 37, .36)), linear-gradient(0deg, #111e33, transparent 38%); }
.solution-breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; font-size: 12px; color: #b8c6d8; margin: 0 0 22px; }
.solution-breadcrumbs a:hover, .solution-back:hover { color: #f4bed3; }
.solutions-page .solution-back { display: inline-block; font-size: 13px; color: #d4deec; margin-bottom: 26px; }
.solutions-page .solution-vendor-profile { display: grid; grid-template-columns: 280px minmax(0, 1fr); align-items: center; gap: 34px; }
.solution-vendor-profile .solution-logo { min-height: 170px; }
.solutions-page .solution-vendor-profile h1 { font-size: clamp(36px, 4.5vw, 56px); margin: 0 0 14px; line-height: 1.05; }
.solutions-page .solution-vendor-profile p { color: #cad4e2; line-height: 1.65; font-size: 15px; max-width: 750px; margin: 0; }
.solutions-page .solution-vendor-profile .eyebrow { margin-bottom: 12px; }
.solution-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.solution-tags span { border: 1px solid #44566d; background: #1d2d43; padding: 7px 11px; font-size: 12px; color: #dde5ef; border-radius: 6px; }
@media (max-width: 700px) {
  .solution-vendor-intro--photo::after { background: linear-gradient(0deg, #111e33, rgba(8, 20, 37, .82) 36%, rgba(8, 20, 37, .42)); }
}
.solutions-page .solution-documents { padding-top: 44px; background: #111e33; scroll-margin-top: 110px; }
.solution-document-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.solutions-page .solution-document-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; padding: 12px; border: 1px solid #42516a; border-radius: 13px; background: linear-gradient(140deg, #23314a, #18263d); color: #fff; transition: border-color .2s, transform .2s; text-decoration: none; }
.solutions-page .solution-document-card:hover { border-color: #d45180; transform: translateY(-2px); }
.solution-document-cover { position: relative; display: flex; align-items: center; align-self: center; aspect-ratio: 16 / 9; width: 100%; overflow: hidden; border-radius: 8px; background: #102853; }
.solution-document-cover img { width: 100%; height: 100%; object-fit: contain; display: block; }
.solution-cover-open { position: absolute; inset: 0; display: grid; place-items: center; background: #071a34bf; color: #fff; opacity: 0; transition: opacity .2s; font-size: 13px; }
.solution-document-card:hover .solution-cover-open { opacity: 1; }
.solution-document-copy { padding: 6px 8px 6px 0; display: flex; flex-direction: column; min-width: 0; }
.solution-document-meta { color: #b6c6db; font-size: 11px; display: flex; gap: 8px; margin-bottom: 10px; }
.solutions-page .solution-document-card :is(h3, h4, h5) { font-size: 21px; margin: 0 0 9px; letter-spacing: -.015em; line-height: 1.2; overflow-wrap: normal; word-break: normal; color: #fff; }
.solutions-page .solution-document-card p { font-size: 13px; line-height: 1.55; color: #c1cee0; margin: 0 0 20px; }
.solution-source-note { font-size: 12px; line-height: 1.6; color: #acbdd2; margin: 23px 0 0; max-width: 750px; }
.solution-section-nav { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 32px; }
.solution-section-nav a { display: block; padding: 12px 16px; border: 1px solid #42516a; border-radius: 8px; background: #1b293e; color: #eef3fa; font-size: 14px; line-height: 1.4; text-decoration: none; }
.solution-section-nav a:hover { border-color: #d45180; }
.solution-topic, .solution-subtopic { scroll-margin-top: 110px; }
.solution-topic + .solution-topic { margin-top: 52px; padding-top: 36px; border-top: 1px solid var(--solution-line); }
.solution-topic-head { display: flex; justify-content: space-between; align-items: baseline; gap: 20px; margin-bottom: 22px; }
.solutions-page .solution-topic-head h3 { font-size: clamp(25px, 2.7vw, 34px); margin: 0; line-height: 1.2; }
.solutions-page .solution-topic-head h4 { font-size: clamp(22px, 2.2vw, 27px); margin: 0; line-height: 1.25; color: #f4f7fb; }
.solution-subtopic + .solution-subtopic { margin-top: 36px; }
.solution-section-nav--children { margin-bottom: 28px; }
.solutions-page .solution-reader-section { padding: 28px 0 52px; background: #0e1c2f; }
.solution-reader-section .solution-back { margin-bottom: 20px; }
.solutions-page .solution-reader { border: 1px solid #42526b; border-radius: 14px; background: #0d1c2f; overflow: hidden; }
.solution-reader-header { display: flex; gap: 20px; justify-content: space-between; align-items: center; border-bottom: 1px solid #35475f; padding: 16px 20px; }
.solution-reader-heading { display: flex; align-items: center; gap: 20px; min-width: 0; }
.solution-reader-heading > img { width: 110px; height: 44px; object-fit: contain; }
.solution-reader-heading > img.solution-reader-logo-light { background: #f7f9fc; padding: 6px; border-radius: 6px; flex-shrink: 0; }
.solutions-page .solution-reader-heading h1 { font-size: 22px; margin: 0 0 5px; line-height: 1.2; }
.solution-reader-heading p { font-size: 12px; color: #b8c9de; margin: 0; }
.solution-reader-actions { display: flex; align-items: center; gap: 18px; flex-shrink: 0; }
.solution-reader-actions a { font-size: 12px; color: #e5edf8; }
.solution-reader-actions button, .solution-reader-actions .solution-reader-close { border: 0; background: transparent; color: #d9e5f4; cursor: pointer; width: 40px; height: 40px; display: grid; place-items: center; font-size: 28px; border-radius: 6px; }
.solution-reader-actions button:hover, .solution-reader-actions a:hover { color: #f5b8cf; background: #1d2c42; }
.solution-reader-body { display: grid; grid-template-columns: 148px minmax(0, 1fr); height: min(68vh, 720px); min-height: 440px; }
.solution-reader-thumbnails { padding: 16px 10px; overflow-y: auto; border-right: 1px solid #34475e; background: #101f33; display: flex; flex-direction: column; gap: 12px; scrollbar-color: #a93a66 #14223a; scrollbar-width: thin; }
.solution-reader-thumbnail { position: relative; flex-shrink: 0; display: block; width: 100%; border: 2px solid transparent; border-radius: 7px; padding: 4px; background: transparent; cursor: pointer; color: #c6d5e8; }
.solution-reader-thumbnail[aria-current="page"] { border-color: #db5a8a; background: #2c2440; }
.solution-reader-thumbnail canvas { display: block; width: 100%; aspect-ratio: 16 / 9; background: #1b3051; border-radius: 3px; }
.solution-reader-thumbnail > span { display: block; font-size: 11px; padding-top: 5px; }
.solution-reader-main { display: flex; flex-direction: column; min-width: 0; min-height: 0; }
.solution-reader-toolbar { display: flex; justify-content: center; align-items: center; gap: 8px; padding: 10px; flex-shrink: 0; border-bottom: 1px solid #293c54; }
.solution-reader-toolbar button { display: grid; place-items: center; border: 1px solid #3c506a; background: #20334c; color: #e4edf8; border-radius: 6px; min-width: 36px; height: 36px; padding: 0 8px; font-size: 22px; cursor: pointer; }
.solution-reader-toolbar button[data-pdf-fit] { font-size: 12px; width: 64px; }
.solution-reader-toolbar button:disabled { opacity: .4; cursor: default; }
.solution-reader-toolbar button:not(:disabled):hover { border-color: #d05785; background: #37283f; }
.solution-page-control { display: flex; gap: 7px; align-items: center; font-size: 12px; color: #d1dfef; }
.solutions-page .solution-page-control input { appearance: textfield; width: 43px; height: 36px; text-align: center; padding: 5px; color: #fff; border-radius: 6px; background: #182b44; border-color: #3c506a; }
.solution-page-control input::-webkit-inner-spin-button { appearance: none; }
.solution-toolbar-divider { width: 1px; height: 20px; margin: 0 8px; background: #40516a; }
.solution-reader-stage { position: relative; overflow: auto; flex: 1; min-height: 0; background: #14243b; display: flex; align-items: safe center; justify-content: safe center; padding: 20px; scrollbar-color: #7f3e66 #15233a; }
.solution-reader-stage > canvas { display: block; flex: 0 0 auto; background: #fff; border-radius: 5px; box-shadow: 0 10px 40px #0005; }
.solution-reader-stage > canvas[hidden] { display: none; }
.solution-reader-status { color: #d1dfef; text-align: center; font-size: 14px; }
.solution-reader-fallback { padding: 20px; background: #1c2c43; color: #d4dfee; }
.solution-reader-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 20px; border-top: 1px solid #35475f; font-size: 12px; color: #b5c6da; }
.solution-reader-footer a { color: #e8c0d2; }
.solution-reader:fullscreen { border-radius: 0; display: flex; flex-direction: column; width: 100%; height: 100%; }
.solution-reader:fullscreen .solution-reader-body { flex: 1; height: auto; min-height: 0; }
.solutions-page .solution-page-text { margin-top: 16px; border: 1px solid #344a64; border-radius: 9px; padding: 14px 16px; color: #cfdbeb; }
.solution-page-text summary { cursor: pointer; font-size: 12px; }
.solution-page-text p { white-space: pre-line; font-size: 14px; line-height: 1.7; }
.solution-reader-description { display: flex; justify-content: space-between; align-items: start; gap: 30px; margin-top: 20px; }
.solution-reader-description p { color: #b5c6da; font-size: 13px; line-height: 1.6; margin: 0; max-width: 580px; }
.solution-reader-description a { color: #f0b7cc; font-size: 13px; }
.solutions-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.solutions-page a:focus-visible, .solutions-page button:focus-visible, .solutions-page input:focus-visible, .solutions-page [tabindex]:focus-visible { outline: 2px solid #ed81ac; outline-offset: 4px; }
@media (max-width: 1080px) {
  /* The older mobile parity stylesheet only knew the original page classes. */
  html body.solutions-page.pnp-ux-parity { background: #081426 !important; color: #f4f7fb !important; }
  html body.solutions-page.pnp-ux-parity > .page { background: #081426 !important; }
  html body.solutions-page.pnp-ux-parity:not(.solutions-index-page) .topbar { background: #081426 !important; border-bottom-color: #34445b !important; }
  html body.solutions-page.pnp-ux-parity main { color: #f4f7fb !important; }
  html body.solutions-page.pnp-ux-parity main :is(h1, h2, h3) { color: #f4f7fb !important; }
  html body.solutions-page.pnp-ux-parity:not(.solutions-index-page) main,
  html body.solutions-page.pnp-ux-parity:not(.solutions-index-page) main :is(h1, h2, h3, button, input) { font-family: var(--sans) !important; }
  html body.solutions-page.pnp-ux-parity main .accent-word { color: #d6a8b9 !important; }
  html body.solutions-page.pnp-ux-parity main .eyebrow { color: #d6a8b9 !important; }
  html body.solutions-page.pnp-ux-parity main .hero-subtitle { color: #e3eaf4 !important; }
  html body.solutions-page.pnp-ux-parity main .solutions-hero { background-color: #081426 !important; }
  html body.solutions-page.pnp-ux-parity main .hero.solutions-hero h1 { color: #f4f7fb !important; -webkit-text-fill-color: #f4f7fb !important; }
  html body.solutions-page.pnp-ux-parity main .hero.solutions-hero h1 .accent-word { color: #d6a8b9 !important; -webkit-text-fill-color: #d6a8b9 !important; }
  html body.solutions-page.pnp-ux-parity main .hero.solutions-hero .hero-subtitle { color: #e3eaf4 !important; }
  html body.solutions-page.pnp-ux-parity main .hero.solutions-hero .solutions-features { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; background: #07172ce6 !important; border-color: #35445c !important; }
  html body.solutions-page.pnp-ux-parity main .hero.solutions-hero .feature-mini { background: transparent !important; color: #d9e4f2 !important; border-color: #35445c !important; }
  html body.solutions-page.pnp-ux-parity main .hero.solutions-hero .feature-mini span { color: #d9e4f2 !important; }
  html body.solutions-page.pnp-ux-parity main .hero.solutions-hero .feature-mini i { background: #52283f !important; color: #f3c6d7 !important; border-color: #9d4a70 !important; }
  html body.solutions-page.pnp-ux-parity main .solutions-search input { background: #1b293e !important; color: #f4f7fb !important; border-color: #46556c !important; }
  html body.solutions-page.pnp-ux-parity main .solutions-search input::placeholder { color: #b6c2d3 !important; }
  html body.solutions-page.pnp-ux-parity main .solution-library { background: linear-gradient(125deg, #111e33, #10192c) !important; }
  html body.solutions-page.pnp-ux-parity main .solution-vendor-intro { background: radial-gradient(ellipse at 95% 20%, #183048, transparent 65%), #0e1b2e !important; }
  html body.solutions-page.pnp-ux-parity main .solution-documents { background: #111e33 !important; }
  html body.solutions-page.pnp-ux-parity main .solution-reader-section { background: #0e1c2f !important; }
  html body.solutions-page.pnp-ux-parity main .solution-reader-heading p { color: #b8c9de !important; }
  html body.solutions-page.pnp-ux-parity main .solution-breadcrumbs, html body.solutions-page.pnp-ux-parity main .solution-breadcrumbs a { color: #b8c6d8 !important; }
  html body.solutions-page.pnp-ux-parity main .solution-back { color: #d4deec !important; }
  html body.solutions-page.pnp-ux-parity main .solution-page-control input { color: #fff !important; background: #182b44 !important; }
  html body.solutions-page.pnp-ux-parity main .solution-page-text { background: #14243b !important; color: #cfdbeb !important; }
  html body.solutions-page.pnp-ux-parity:not(.solutions-index-page) main .btn { background: #8b2a4b !important; color: #fff !important; border-color: #b75c7e !important; font-family: var(--sans) !important; }
  html body.solutions-page.pnp-ux-parity:not(.solutions-index-page) main .btn.ghost { background: #1b293e !important; color: #f1d6e0 !important; border-color: #617089 !important; }
  html body.solutions-index-page.pnp-ux-parity .solution-vendor-card.partner-card { border: 1px solid rgba(118, 143, 176, .26) !important; background: linear-gradient(145deg, #202c47, #121f35) !important; color: #fefefe !important; }
  html body.solutions-index-page.pnp-ux-parity .solution-vendor-card.partner-card .partner-logo-tile { background: linear-gradient(145deg, #fff, #edf2f8) !important; }
  html body.solutions-index-page.pnp-ux-parity .solution-vendor-card.partner-card .partner-logo-tile.solution-logo-dark { background: #050505 !important; }
  html body.solutions-index-page.pnp-ux-parity .solution-vendor-card.partner-card :is(h3, p, span) { color: #fefefe !important; }
  html body.solutions-index-page.pnp-ux-parity .solution-vendor-card.partner-card p { font-size: 12px; line-height: 1.45; }
  html body.solutions-index-page.pnp-ux-parity .solution-vendor-card.partner-card .partner-meta { color: rgba(254, 254, 254, .76) !important; }
  .solutions-page .solution-vendor-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .solutions-page .solutions-hero { min-height: 540px; }
  .solutions-page .solution-document-card { grid-template-columns: 1fr; gap: 15px; }
  .solution-document-copy { padding: 0 8px 8px; }
  .solution-document-card .solution-card-link { padding-top: 6px; }
  .solution-reader-header { gap: 12px; padding: 14px; }
  .solution-reader-heading { gap: 12px; }
  .solution-reader-heading > img { width: 80px; }
  .solution-reader-actions { gap: 8px; }
}
@media (max-width: 680px) {
  .solutions-page .page > main { padding-top: 76px; }
  .solutions-index-page .page > main { padding-top: 0; }
  .solutions-desktop-break { display: none; }
  html body.solutions-index-page.pnp-ux-parity .solutions-hero .solutions-features,
  html body.solutions-index-page.pnp-ux-parity .solutions-hero .eyebrow { display: none !important; }
  .solutions-index-page .solution-library .solutions-section-head .eyebrow { display: none !important; }
  html body.solutions-index-page.pnp-ux-parity main .solution-library .section-head h2 { color: #fefefe !important; -webkit-text-fill-color: #fefefe !important; }
  .solutions-page .solution-library, .solutions-page .solution-documents { padding: 36px 0; }
  .solutions-page .solutions-section-head { align-items: stretch; flex-direction: column; gap: 20px; }
  .solutions-page .solutions-section-head h2 { font-size: 30px; }
  .solutions-search { flex: auto; min-width: 0; width: 100%; }
  .solutions-page .solution-vendor-grid { grid-template-columns: 1fr; }
  .solutions-page .solution-vendor-card .solution-card-heading h3 { font-size: 19px; }
  .solutions-page .solution-logo { min-height: 140px; }
  .solutions-page .solution-vendor-intro { padding: 26px 0 30px; }
  .solutions-page .solution-vendor-profile { grid-template-columns: 1fr; gap: 24px; }
  .solution-vendor-profile .solution-logo { max-width: 100%; min-height: 140px; }
  .solutions-page .solution-vendor-profile h1 { font-size: 42px; }
  .solutions-page .solution-document-grid { grid-template-columns: 1fr; gap: 16px; }
  .solutions-page .solution-document-card { grid-template-columns: 1fr; padding: 12px; }
  .solutions-page .solution-document-card :is(h3, h4, h5) { font-size: 25px; }
  .solution-section-nav { flex-direction: column; gap: 8px; }
  .solution-topic-head { align-items: start; gap: 12px; }
  .solutions-page .solution-topic-head h3 { font-size: 26px; }
  .solutions-page .solution-topic-head h4 { font-size: 23px; }
  .solution-topic + .solution-topic { margin-top: 36px; padding-top: 28px; }
  .solutions-page .solution-document-card p { font-size: 14px; }
  .solutions-page .solution-document-card .solution-card-link { font-size: 14px; }
  .solutions-page .solution-reader-section { padding-top: 24px; }
  .solution-reader-header { align-items: start; flex-wrap: wrap; padding: 14px; }
  .solution-reader-heading { flex: 1; }
  .solutions-page .solution-reader-heading h1 { font-size: 20px; }
  .solution-reader-heading > img { width: 70px; }
  .solution-reader-heading p { font-size: 10px; }
  .solution-reader-actions { width: 100%; justify-content: flex-end; }
  .solution-reader-actions a[data-solution-download] { margin-right: auto; }
  .solution-reader-actions button, .solution-reader-actions .solution-reader-close { height: 34px; width: 34px; }
  .solution-reader-body { display: flex; flex-direction: column-reverse; height: auto; min-height: 0; }
  .solution-reader-thumbnails { flex-direction: row; border-right: 0; border-top: 1px solid #34475e; max-height: 110px; min-height: 96px; padding: 10px; gap: 8px; overflow-x: auto; overflow-y: hidden; }
  .solution-reader-thumbnail { width: 100px; }
  .solution-reader-main { min-height: 300px; height: 48vh; max-height: 550px; }
  .solution-reader-toolbar { gap: 5px; padding: 9px 5px; }
  .solution-reader-toolbar button { min-width: 30px; height: 36px; }
  .solution-reader-toolbar button[data-pdf-fit] { width: 54px; }
  .solution-toolbar-divider { margin: 0 3px; }
  .solution-reader-stage { padding: 12px; }
  .solution-reader-footer { padding: 14px; flex-wrap: wrap; gap: 10px; font-size: 11px; }
  .solution-reader-description { flex-direction: column; gap: 15px; }
  .solution-reader:fullscreen .solution-reader-main { flex: 1; height: auto; max-height: none; }
}
@media (max-width: 680px) and (max-height: 680px) {
  /* Keep the approved composition scrollable on short phones, without overlapping CTA/text. */
  html body.solutions-index-page.pnp-ux-parity main .hero.solutions-hero.pnp-mobile-standard-hero { height: 700px !important; min-height: 700px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .solutions-page .solution-vendor-card, .solutions-page .solution-document-card, .solution-cover-open { transition: none; }
}

/* Keep the manufacturer directory scannable in two columns on phones. */
@media (max-width: 680px) {
  html body.solutions-index-page.pnp-ux-parity .solution-library,
  html body.solutions-index-page.pnp-ux-parity .solution-library :is(h2, h3, p, span, input) {
    font-family: var(--sans) !important;
  }
  .solutions-index-page .solution-library .solutions-section-head { gap: 14px; }
  .solutions-index-page .solution-library .solutions-section-head h2 {
    text-align: center;
    font-size: clamp(23px, 6.6vw, 29px);
  }
  .solutions-index-page .solution-library .solutions-section-head p { text-align: center; }
  .solutions-index-page .solution-vendor-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }
  .solutions-index-page .solution-vendor-card.partner-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    padding: 9px;
    border-radius: 12px;
  }
  .solutions-index-page .solution-vendor-card .partner-logo-tile {
    height: 76px;
    min-height: 76px;
    margin-bottom: 9px;
    padding: 10px;
    border-radius: 8px;
  }
  .solutions-index-page .solution-vendor-card .partner-logo-tile img {
    max-width: 100%;
    max-height: 52px;
  }
  .solutions-index-page .solution-vendor-card .solution-card-heading { gap: 3px; }
  .solutions-index-page .solution-vendor-card .solution-card-heading h3 { font-size: 15px; }
  .solutions-index-page .solution-vendor-card .solution-card-heading > span { font-size: 10px; }
  .solutions-index-page .solution-vendor-card p:not(.partner-meta) {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin: 7px 0 8px;
    font-size: 10px;
    line-height: 1.3;
  }
  .solutions-index-page .solution-vendor-card .partner-meta { display: none; }
  .solutions-index-page .solution-vendor-card .solution-card-link { font-size: 11px; }
}
