/* Remaining pages share the homepage shell and product-detail foundations. */
.site-refresh { --rule: #b8ccca; --body-muted: #506d77; }
.site-refresh .site-nav a[aria-current="page"] { color: var(--mint); }
.site-refresh .site-nav a[aria-current="page"]::after { transform: scaleX(1); }
.site-refresh :is(section[id], article[id]) { scroll-margin-top: 36px; }
.site-refresh .section--soft { background: #e2ebe6; }
.site-refresh .page-hero { background: #041b28; color: #fff; padding-block: clamp(44px, 5vw, 76px) clamp(60px, 6vw, 90px); overflow: hidden; }
.refresh-hero-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(40px, 5.5vw, 80px); }
.page-hero-copy { min-width: 0; }
.site-refresh .page-hero h1 { font-size: clamp(44px, 4.35vw, 66px); line-height: 1.09; letter-spacing: -.04em; }
.site-refresh .page-hero h1 span { color: var(--mint); }
.site-refresh .page-hero-copy > p:not(.endorsement) { color: #bdd1d8; font-size: 18px; line-height: 1.8; margin-top: 25px; max-width: 49ch; }
.site-refresh .page-hero .page-text-link:hover { color: var(--mint); }
.site-refresh .page-breadcrumb { flex-wrap: wrap; gap: 6px 12px; }
.refresh-hero-visual { position: relative; min-width: 0; padding-bottom: 28px; }
.refresh-hero-visual::before { content: ""; position: absolute; inset: 26px -22px 0 26px; border: 1px solid #45675f; border-radius: 5px; pointer-events: none; }
.refresh-hero-visual img { position: relative; width: 100%; height: auto; aspect-ratio: 1.04; object-fit: cover; border-radius: 4px; }
.refresh-hero-visual figcaption { position: relative; color: #b4ced2; font-size: 15px; padding: 20px 0 0 27px; margin-left: 20px; }
.refresh-products .refresh-hero-visual img { object-position: 65% center; }
.refresh-services .refresh-hero-visual img { object-position: 88% center; }
.refresh-why-prima .refresh-hero-visual img { aspect-ratio: 1.12; object-position: right center; transform: scaleX(-1); }
.refresh-pacs .refresh-hero-visual img,
.refresh-hlink .refresh-hero-visual img,
.refresh-ris .refresh-hero-visual img { object-position: right center; }
.page-hero--editorial .page-hero-copy { display: grid; grid-template-columns: 1.25fr .75fr; gap: 0 9%; align-items: start; }
.page-hero--editorial .page-breadcrumb { grid-column: 1/-1; }
.site-refresh .page-hero--editorial h1 { grid-row: 2/4; font-size: clamp(46px, 4.7vw, 70px); }
.site-refresh .page-hero--editorial .page-hero-copy > p { margin-top: 0; }
.page-hero--editorial .page-hero-actions { grid-column: 2; align-items: flex-start; flex-direction: column; gap: 16px; }
.page-hero .page-network { border-left: 1px solid #45675f; padding-left: 40px; }
.page-hero .page-network ol { grid-template-columns: 1fr; gap: 24px; }
.page-hero .page-network small { max-width: 45ch; }
.site-refresh .page-hero .relationship-strip { font-size: 14px; margin-top: 14px; }
.site-refresh .page-hero .endorsement { margin-block: 0 25px; }
.pacs-deployment-tags { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 30px; color: #b4d1d5; font-size: 14px; }
.pacs-deployment-tags span::before { content: ""; display: inline-block; width: 5px; height: 5px; margin: 0 9px 3px 0; border-radius: 50%; background: var(--mint); }
.page-hero .pacs-hero-lead { font-size: 21px !important; color: #e0ebe9 !important; }

.page-split, .pacs-platform-layout, .pacs-benefits-layout, .why-prima-journey-layout { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 8%; }
.site-refresh :is(.page-split, .pacs-platform-copy, .why-prima-journey-copy) p { color: var(--body-muted); line-height: 1.8; margin-top: 22px; }
.page-split > :is(header, div) > :is(.button, .page-text-link) { margin-top: 26px; }
.page-route-list { border-top: 1px solid var(--rule); }
.page-route-list a { display: grid; grid-template-columns: 1fr 24px; gap: 9px 28px; padding: 25px 0; border-bottom: 1px solid var(--rule); transition: color .2s; }
.page-route-list strong { font-size: 22px; font-weight: 550; line-height: 1.4; letter-spacing: -.025em; }
.page-route-list span { grid-column: 1; color: var(--body-muted); font-size: 16px; }
.page-route-list svg { grid-column: 2; grid-row: 1/3; align-self: center; width: 24px; height: 24px; fill: none; stroke: #397c6e; stroke-width: 1.6; transition: transform .25s var(--ease); }
.page-route-list a:hover { color: #216b5e; }
.page-route-list a:hover svg { transform: translateX(4px); }
.refresh-products #page-details .product-proof { margin-top: 60px; }
.catalog-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7%; }
.catalog-grid > div { min-width: 0; }
.catalog-scene { width: 100%; height: auto; aspect-ratio: 1.65; object-fit: cover; background: #041b28; border-radius: 4px; margin-bottom: 30px; }
.catalog-grid h3 { font-size: 34px; }
.catalog-grid p { color: var(--body-muted); margin-top: 18px; font-size: 17px; line-height: 1.8; }
.catalog-grid .page-route-list { margin-top: 28px; }
.catalog-grid .page-route-list strong { font-size: 20px; }
.site-refresh .page-steps li { grid-template-columns: 40px .8fr 1.2fr; gap: 30px; padding-block: 31px; }
.site-refresh .page-steps li p { grid-column: 3; margin-top: 0; }
.page-facts { margin: 0; }
.page-facts > div { display: grid; grid-template-columns: .7fr 1.3fr; gap: 28px; padding: 25px 0; border-top: 1px solid var(--rule); }
.page-facts dt { font-size: 20px; font-weight: 600; }
.page-facts dd { margin: 0; color: var(--body-muted); font-size: 17px; line-height: 1.8; }
.page-architecture { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.page-architecture section { padding: 25px; border: 1px solid #a8c2b9; border-radius: 4px; }
.site-refresh .page-architecture h3 { font-size: 23px; }
.site-refresh .page-architecture p { margin-top: 16px; font-size: 16px; line-height: 1.8; }
.page-architecture .architecture-core { grid-column: 1/-1; background: #092735; border-color: #092735; color: #fff; }
.page-architecture .architecture-core p { color: #b9d3da; }
/* PACS imaging workflow: Acquire -> archive -> Access, joined by connectors. */
.pacs-flow { list-style: none; margin: 0; padding: 0; }
.pacs-flow li { position: relative; display: grid; grid-template-columns: 60px 1fr; gap: 0 22px; align-items: center; padding: 24px; border: 1px solid #a8c2b9; border-radius: 6px; }
.pacs-flow li + li { margin-top: 46px; }
.pacs-flow li + li::before { content: ""; position: absolute; left: 53px; top: -46px; width: 2px; height: 38px; background: #9cc9bc linear-gradient(180deg, transparent, #e9fff8 50%, transparent) no-repeat 0 -16px / 100% 16px; animation: pacs-flow-pulse 2.4s ease-in-out infinite; }
.pacs-flow li + li::after { content: ""; position: absolute; left: 48px; top: -10px; border: 6px solid transparent; border-top-color: #4f9a87; border-bottom: 0; }
.pacs-flow li:last-child::before { animation-delay: 1.2s; }
@keyframes pacs-flow-pulse { to { background-position: 0 38px; } }
.pacs-flow svg { display: block; box-sizing: border-box; width: 60px; height: 60px; padding: 10px; border-radius: 14px; background: #e1eeea; box-shadow: inset 0 0 0 1px #c9ddd7; fill: none; stroke: #2c7262; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.site-refresh .pacs-flow h3 { font-size: 23px; }
.site-refresh .pacs-flow p { margin-top: 8px; font-size: 16px; line-height: 1.7; color: var(--body-muted); }
.pacs-flow .pacs-flow-core { background: #092735; border-color: #092735; color: #fff; }
.site-refresh .pacs-flow .pacs-flow-core p { color: #b9d3da; }
.pacs-flow .pacs-flow-core svg { background: #216b5e; box-shadow: 0 8px 20px -10px rgba(33,107,94,.7); stroke: #e8fbf5; }

.service-jump-links { display: flex; gap: 38px; padding-block: 24px; border-bottom: 1px solid var(--rule); }
.service-jump-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: 16px; font-weight: 600; color: #216b5e; }
.service-jump-links a:hover { text-decoration: underline; }
.service-story { display: grid; grid-template-columns: .9fr 1.1fr; gap: 8%; align-items: start; }
.service-story > img { width: 100%; height: auto; aspect-ratio: 1.05; object-fit: cover; object-position: right center; border-radius: 5px; position: sticky; top: 120px; }
.service-story--reverse > img { order: 2; }
.service-story > div > p { color: var(--body-muted); line-height: 1.8; margin-top: 23px; }
.service-story details { border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); margin-top: 28px; }
.site-refresh details summary { padding: 22px 0; cursor: pointer; font-size: 17px; font-weight: 600; }
.site-refresh details summary::marker { color: #397c6e; }
.site-refresh details summary:hover { color: #216b5e; }
.service-story ul { padding-left: 21px; margin-block: 0 22px; color: var(--body-muted); font-size: 16px; }
.service-story li { padding-block: 6px; }
.service-story li::marker { color: #397c6e; }
.service-detail-benefits { margin-top: 26px; }
.service-detail-benefits-label { font-size: 14px; color: #216b5e; font-weight: 650; margin-bottom: 13px; }
.service-detail-benefits ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; }
.services-audience-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 38px; }
.services-audience-card { border-top: 1px solid var(--rule); padding-top: 24px; }
.services-audience-icon { width: 48px; height: 48px; margin-bottom: 22px; color: #397c6e; }
.services-audience-icon svg { width: 48px; height: 48px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.services-audience-icon .icon-tint { fill: #c3ddd2; stroke: none; }
.site-refresh .services-audience-card h3 { font-size: 23px; }
.services-audience-card p { margin-top: 16px; color: #4b695f; line-height: 1.8; font-size: 16px; }
.services-audience-heading h2 { max-width: 31ch; }

.why-prima-purpose-grid, .quality-docs { display: grid; grid-template-columns: 1fr 1fr; gap: 8%; }
.why-prima-purpose-card, .quality-docs article { border-top: 1px solid var(--rule); padding-top: 30px; }
.why-prima-card-index { color: #216b5e; font-size: 14px; font-weight: 650; margin-bottom: 24px; }
.site-refresh .why-prima-purpose-card h3 { font-size: clamp(28px, 2.8vw, 38px); max-width: 23ch; }
.why-prima-purpose-card > p:last-child, .quality-docs p { margin-top: 24px; line-height: 1.8; color: var(--body-muted); font-size: 17px; }
.quality-docs .page-text-link { margin-top: 23px; }
.site-refresh .why-prima-journey-section { background: #092735; color: #fff; }
.site-refresh .why-prima-journey-copy p { color: #b9d3da; }
.why-prima-journey-grid { list-style: none; margin: 0; padding: 0; }
.why-prima-journey-grid li { display: grid; grid-template-columns: 30px 1fr; gap: 22px; padding: 28px 0; border-top: 1px solid #385661; }
.why-prima-journey-grid li > span { color: var(--mint); font-size: 13px; padding-top: 5px; }
.why-prima-journey-grid p { color: #b9d3da; font-size: 17px; margin-top: 15px; line-height: 1.8; }

.ris-feature-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px 8%; }
.feature-group h3 { margin-bottom: 20px; }
.feature-group details, .pacs-capability-details details { border-bottom: 1px solid var(--rule); }
.site-refresh details p { color: var(--body-muted); line-height: 1.8; font-size: 16px; margin-bottom: 22px; }
.pacs-capability-group { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8%; border-top: 1px solid var(--rule); padding-top: 30px; margin-bottom: 48px; }
.pacs-capability-group:last-child { margin-bottom: 0; }
.pacs-capability-details details:first-child summary { padding-top: 0; }
.site-refresh .pacs-process-section { background: #092735; color: #fff; padding-block: clamp(64px, 7vw, 104px); }
.pacs-process-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px; padding: 0; margin: 0; list-style: none; }
.pacs-process-grid li { border-top: 1px solid #385661; padding-top: 24px; }
.pacs-process-grid li > span { display: block; font-size: 13px; color: var(--mint); margin-bottom: 22px; }
.pacs-process-grid p { color: #b9d3da; font-size: 17px; margin-top: 18px; line-height: 1.8; }
.pacs-deployment-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 8%; align-items: center; margin-bottom: 44px; }
.pacs-deployment-intro .section-heading { display: block; margin: 0; }
.pacs-deployment-intro img { width: 100%; height: auto; aspect-ratio: 1.8; object-fit: cover; border-radius: 4px; }
.pacs-deployment-grid, .services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.pacs-deployment-grid article { border-top: 1px solid var(--rule); padding-top: 24px; }
.pacs-deployment-grid article > span { display: block; font-size: 13px; color: #216b5e; margin-bottom: 20px; }
.pacs-deployment-grid p { margin-top: 20px; font-size: 17px; line-height: 1.8; color: var(--body-muted); }
.pacs-benefits-layout ul { padding-left: 20px; margin: 28px 0 0; color: var(--body-muted); font-size: 17px; }
.pacs-benefits-layout li { padding-block: 8px; }
.pacs-suitable-card { border-left: 1px solid #a7c3b5; padding-left: 40px; }
.site-refresh .pacs-cta-section { background: #092735; color: #fff; padding-block: clamp(64px, 7vw, 104px); }
.pacs-cta-layout { display: flex; align-items: center; justify-content: space-between; gap: 60px; }
.pacs-cta-layout h2 { max-width: 24ch; }
.pacs-cta-layout p { margin-top: 24px; color: #b9d3da; }
.pacs-cta-actions { flex-shrink: 0; }
.pacs-cta-actions .button-outline { background: var(--mint); border-color: transparent; }
.pacs-cta-actions .button-outline:hover { background: #c4f8e9; }
.product-family-grid--even, .hlink-value-grid, .hlink-pricing-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 8%; }
.hlink-value-card { border-top: 1px solid var(--rule); padding-block: 30px; }
.hlink-value-index { display: block; color: #397c6e; font-size: 13px; margin-bottom: 18px; }
.hlink-value-card p { margin-top: 20px; color: var(--body-muted); font-size: 17px; line-height: 1.8; }
.site-refresh .hlink-pricing-section > .container { display: block; }
.hlink-pricing-section .section-heading > p { color: #b9d3da; }
.hlink-pricing-card { border-top: 1px solid #385661; padding-top: 30px; }
.hlink-pricing-kicker { display: block; font-size: 14px; color: var(--mint); margin-bottom: 20px; }
.hlink-pricing-card p { color: #b9d3da; margin-top: 20px; }
.hlink-pricing-card ul { color: #b9d3da; padding-left: 20px; font-size: 17px; margin-block: 25px 32px; }
.hlink-pricing-card li { padding-block: 7px; }
.integration-map-surface { border-radius: 5px; box-shadow: none; background: #092735; }
.integration-node { border-radius: 3px; }
.integration-node--core { background: #174b47; border-color: var(--mint); }
.integration-standard > span { color: #216b5e; }

.planning-workspace { display: grid; grid-template-columns: 1.3fr .8fr; gap: 8%; align-items: start; }
.planning-workspace fieldset { border: 0; border-top: 1px solid var(--rule); padding: 24px 0 0; margin: 0 0 45px; min-width: 0; }
.planning-workspace legend { font-size: 25px; font-weight: 550; padding-right: 18px; }
.planning-workspace label { display: block; font-size: 16px; font-weight: 600; margin-block: 22px 10px; }
.planning-workspace :is(input, textarea) { width: 100%; background: #fff; color: var(--text); padding: 15px; border: 1px solid #9ab6ad; border-radius: 3px; }
.planning-workspace textarea { min-height: 132px; resize: vertical; }
.planning-workspace ::placeholder { color: #5b716d; opacity: 1; }
.planning-summary { position: sticky; top: 120px; padding: 34px; background: #e2ebe6; border-radius: 4px; }
.site-refresh .planning-summary h2 { font-size: 32px; }
.planning-summary p { font-size: 16px; line-height: 1.8; color: #4b695f; margin-top: 22px; }
.planning-summary .planner-progress { color: #216b5e; font-weight: 650; }
.planning-summary .button { margin-top: 28px; }
.planner-actions { display: flex; flex-wrap: wrap; gap: 16px; }
.planner-status { color: #216b5e; font-size: 16px; margin-top: 20px; }
.button-outline { background: transparent; border-color: #7b9d93; }
.button-outline:hover { background: #e2ebe6; }
.enquiry-confirmation { background: #041b28; color: #fff; min-height: 65vh; display: flex; align-items: center; padding-block: 90px; }
.enquiry-confirmation h1 { max-width: 17ch; font-size: clamp(44px, 5vw, 72px); }
.enquiry-confirmation p { color: #b9d3da; margin-block: 26px 32px; max-width: 53ch; }

@media (prefers-reduced-motion: no-preference) {
  .refresh-hero-visual { animation: refresh-arrive .8s var(--ease) both; }
  @keyframes refresh-arrive { from { opacity: .5; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
}
@media (max-width: 1100px) {
  .refresh-hero-grid { gap: 40px; }
  .site-refresh .page-hero h1 { font-size: 48px; }
  .services-audience-grid { grid-template-columns: repeat(2, 1fr); }
  .service-story { gap: 5%; }
  .planning-workspace { gap: 5%; grid-template-columns: 1.2fr .8fr; }
  .planning-summary { padding: 25px; }
}
@media (max-width: 799px) {
  .refresh-hero-grid, .page-hero--editorial .page-hero-copy, .page-split, .pacs-platform-layout, .pacs-benefits-layout, .service-story, .why-prima-journey-layout, .planning-workspace, .pacs-capability-group, .pacs-deployment-intro { grid-template-columns: 1fr; gap: 38px; }
  .site-refresh .page-hero { padding-block: 30px 54px; }
  .site-refresh .page-hero h1 { font-size: clamp(42px, 7vw, 58px); max-width: 20ch; }
  .site-refresh .page-hero-copy > p:not(.endorsement) { font-size: 17px; max-width: 58ch; }
  .refresh-hero-visual { margin-right: 18px; }
  .refresh-hero-visual img { aspect-ratio: 1.55; }
  .refresh-hero-visual::before { right: -18px; }
  .page-hero--editorial .page-hero-copy { display: block; }
  .site-refresh .page-hero--editorial .page-hero-copy > p { margin-top: 25px; }
  .page-hero--editorial .page-hero-actions { flex-direction: row; align-items: center; gap: 20px; }
  .page-hero .page-network { padding: 30px 0 0; border-left: 0; border-top: 1px solid #45675f; }
  .site-refresh .page-steps li { grid-template-columns: 30px 1fr; gap: 12px 20px; }
  .site-refresh .page-steps li p { grid-column: 2; }
  .catalog-grid, .why-prima-purpose-grid, .quality-docs, .ris-feature-grid, .product-family-grid--even, .hlink-value-grid, .hlink-pricing-grid { grid-template-columns: 1fr; gap: 38px; }
  .catalog-scene { max-height: 340px; }
  .service-story > img { position: static; aspect-ratio: 1.6; }
  .service-story--reverse > img { order: 0; }
  .service-jump-links { gap: 22px; overflow-x: auto; }
  .service-jump-links a { white-space: nowrap; font-size: 14px; }
  .pacs-process-grid, .pacs-deployment-grid, .services-grid { grid-template-columns: 1fr; gap: 32px; }
  .pacs-suitable-card { border-left: 0; border-top: 1px solid var(--rule); padding: 28px 0 0; }
  .pacs-cta-layout { flex-direction: column; align-items: flex-start; gap: 30px; }
  .planning-summary { position: static; }
  .hlink-value-grid { gap: 0; }
}
@media (max-width: 480px) {
  .site-refresh .page-hero h1 { font-size: 42px; }
  .page-route-list strong { font-size: 20px; }
  .services-audience-grid { grid-template-columns: 1fr; gap: 30px; }
  .services-audience-card { display: grid; grid-template-columns: 48px 1fr; gap: 0 20px; }
  .services-audience-icon { grid-row: 1/3; }
  .services-audience-card p { grid-column: 2; }
  .service-detail-benefits ul { grid-template-columns: 1fr; }
  .page-facts > div, .page-architecture { grid-template-columns: 1fr; gap: 14px; }
  .page-architecture .architecture-core { grid-column: auto; }
  .pacs-flow li { grid-template-columns: 50px 1fr; gap: 0 16px; padding: 20px; }
  .pacs-flow svg { width: 50px; height: 50px; padding: 8px; border-radius: 12px; }
  .pacs-flow li + li::before { left: 44px; }
  .pacs-flow li + li::after { left: 39px; }
  .site-refresh .pacs-flow h3 { font-size: 20px; }
  .site-refresh .page-breadcrumb { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) { .refresh-hero-visual { animation: none; } }
@media print {
  .site-refresh { background: white; color: #143342; }
  .site-refresh :is(.site-header, .site-footer, .page-hero, .planner-actions, .planning-summary .button, .planner-status, .skip-link) { display: none !important; }
  .site-refresh .section { padding: 0; }
  .site-refresh main { overflow: visible; }
  .planning-workspace { display: block; }
  .planning-summary { position: static; margin-top: 30px; }
  .planning-workspace fieldset { break-inside: avoid; }
  .planning-workspace textarea { overflow: visible; }
}
