/* CX24 R82: scoped engineering proposition and shared PBM discovery. */
.enterprise-site-header.pbm-discovery-header { grid-template-columns: minmax(132px,290px) minmax(0,1fr) auto; }
.pbm-discovery-header .brand > span { white-space: normal; font-size: 10px; line-height: 1.5; }
.pbm-discovery-header .primary-nav > a,.pbm-discovery-header .primary-nav > button { padding-inline: clamp(7px,.75vw,12px); font-size: 11px; }
.pbm-discovery-header .primary-nav > .pbm-nav-feature { color: #e7f8ff; box-shadow: inset 0 -1px #18bfdb; }
.pbm-discovery-header .primary-nav > .pbm-nav-feature[aria-current="page"] { background: #103647; }
.pbm-discovery-header .mobile-nav .pbm-mobile-feature { margin-top: 8px; padding: 15px 12px; border: 1px solid #24596b; background: #0c2736; }
.pbm-discovery-header .mobile-nav .pbm-mobile-feature b { color: #77e4ee; }
@media (max-width: 1400px) and (min-width: 901px) { .enterprise-site-header.pbm-discovery-header { grid-template-columns: 120px minmax(0,1fr) auto; } .pbm-discovery-header .brand > span { display: none; } }
@media (min-width: 1521px) { .enterprise-site-header.pbm-discovery-header { grid-template-columns: 250px minmax(0,1fr) auto; } }
@media (min-width: 901px) and (max-width: 1100px) { .enterprise-site-header.pbm-discovery-header { grid-template-columns: 120px minmax(0,1fr); } .pbm-discovery-header .header-cta { display: none; } }
@media (max-width: 900px) { .enterprise-site-header.pbm-discovery-header { grid-template-columns: 1fr auto; } .pbm-discovery-header .primary-nav,.pbm-discovery-header .header-cta { display: none; } .pbm-discovery-header .menu-toggle { display: flex; } }
.pbm-section,.pbm-hero { --pbm-ink:#112936; --pbm-muted:#4c6574; --pbm-rule:#d1dee4; --pbm-accent:#007d98; padding: 86px max(32px,calc((100vw - 1352px)/2)); color: var(--pbm-ink); scroll-margin-top: 110px; }
.pbm-light { background: #f6f9fa; }
.pbm-dark { --pbm-ink:#edf6fa; --pbm-muted:#a6bac5; --pbm-rule:#25404f; --pbm-accent:#60e1eb; color: var(--pbm-ink); background: #071822; }
.pbm-section *, .pbm-hero *, .pbm-page-nav * { box-sizing: border-box; }
.pbm-section h2,.pbm-hero h1 { margin: 0; max-width: 940px; font-weight: 450; font-size: clamp(30px,3.5vw,51px); line-height: 1.08; letter-spacing: -.055em; }
.pbm-section h3 { margin: 0 0 16px; color: var(--pbm-ink); font-size: 21px; line-height: 1.25; letter-spacing: -.025em; font-weight: 550; }
.pbm-section p,.pbm-hero p { color: var(--pbm-muted); line-height: 1.7; font-size: 15px; overflow-wrap: break-word; }
.pbm-section .pbm-kicker,.pbm-hero .pbm-kicker { margin: 0 0 21px; font-family: "DM Mono",monospace; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--pbm-accent); }
.pbm-heading { max-width: 870px; margin-bottom: 40px; }
.pbm-heading > p:last-child:not(.pbm-kicker) { margin: 22px 0 0; max-width: 740px; font-size: 16px; }
.pbm-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 13px; margin-top: 28px; }
.pbm-button { min-height: 48px; max-width: 100%; padding: 14px 19px; display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; border: 1px solid var(--pbm-rule); color: var(--pbm-ink); background: transparent; text-align: left; font: 500 12px/1.5 "Inter",sans-serif; text-decoration: none; cursor: pointer; transition: border-color .18s,background .18s; }
.pbm-button > span { flex-shrink: 0; color: var(--pbm-accent); }
.pbm-button:hover { border-color: var(--pbm-accent); background: #009abb0d; }
.pbm-button--primary { color: #03202c; background: #58e3ec; border-color: #58e3ec; }
.pbm-button--primary > span { color: #03202c; }
.pbm-button--primary:hover { color: #03202c; background: #91edf2; border-color: #91edf2; }
.pbm-section a:focus-visible,.pbm-section button:focus-visible,.pbm-section summary:focus-visible,.pbm-page-nav a:focus-visible,.pbm-hero a:focus-visible { outline: 3px solid #079abe; outline-offset: 4px; }
.pbm-section .pbm-note { margin: 28px 0 0; padding-top: 20px; border-top: 1px solid var(--pbm-rule); font-size: 12px; line-height: 1.75; }
.pbm-note a { color: var(--pbm-accent); text-decoration: underline; text-underline-offset: 3px; }
.pbm-section .pbm-note--top { margin: -15px 0 30px; padding-top: 0; border: 0; }
.pbm-grid { display: grid; gap: 0; border: 1px solid var(--pbm-rule); }
.pbm-grid > * { min-width: 0; padding: 30px; }
.pbm-grid--three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.pbm-grid--three > :not(:nth-child(3n)) { border-right: 1px solid var(--pbm-rule); }
.pbm-grid--three > :nth-child(n+4) { border-top: 1px solid var(--pbm-rule); }
.pbm-grid--two { grid-template-columns: repeat(2,minmax(0,1fr)); }
.pbm-grid--two > :nth-child(odd) { border-right: 1px solid var(--pbm-rule); }
.pbm-grid--two > :nth-child(n+3) { border-top: 1px solid var(--pbm-rule); }
.pbm-number { display: block; margin-bottom: 28px; color: var(--pbm-accent); font: 11px/1.5 "DM Mono",monospace; }
.pbm-home { background: radial-gradient(ellipse at 0 100%,#103547 0,transparent 60%),#071822; }
.pbm-home-grid { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); gap: 9%; align-items: center; }
.pbm-home .pbm-heading { margin-bottom: 22px; }
.pbm-home .pbm-home-scope { color: #71d5df; font-size: 12px; }
.pbm-home-path { border-left: 1px solid var(--pbm-rule); padding-left: 36px; }
.pbm-home-path > a { padding: 22px 0; display: flex; gap: 24px; border-bottom: 1px solid var(--pbm-rule); }
.pbm-home-path > a > span { font: 11px "DM Mono",monospace; color: #59c9da; padding-top: 5px; }
.pbm-home-path h3 { margin-bottom: 8px; font-size: 20px; }
.pbm-home-path p { margin: 0; font-size: 13px; }
.pbm-home-path a:hover h3 { color: #66e5ed; }
.pbm-hero { padding-top: 88px; padding-bottom: 76px; background: radial-gradient(ellipse at 75% 35%,#133446 0,transparent 58%),#06141d; }
.pbm-hero-grid { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); align-items: center; gap: 7%; }
.pbm-hero h1 { font-size: clamp(41px,4.6vw,66px); letter-spacing: -.06em; }
.pbm-hero h1 em { color: #66dce7; font-style: normal; }
.pbm-hero p { max-width: 600px; }
.pbm-hero .pbm-lead { color: #e5eff5; font-size: 19px; line-height: 1.5; margin-top: 28px; }
.pbm-hero .pbm-hero-foot { font-size: 11px; margin: 25px 0 0; }
.pbm-model-figure { margin: 0; border: 1px solid #315063; background: repeating-linear-gradient(0deg,transparent,transparent 31px,#34566a20 32px),repeating-linear-gradient(90deg,transparent,transparent 31px,#34566a20 32px),#0a1b27; padding: 24px; min-width: 0; }
.pbm-figure-top { display: flex; justify-content: space-between; gap: 14px; color: #85a7b8; font: 9px/1.6 "DM Mono",monospace; letter-spacing: .08em; }
.pbm-model-inputs { display: flex; justify-content: space-between; gap: 10px; padding: 25px 0; font-size: 11px; color: #b7c9d2; }
.pbm-model-inputs span { padding-bottom: 14px; border-bottom: 1px solid #356478; }
.pbm-model-core { border: 1px solid #326172; padding: 20px 16px; text-align: center; }
.pbm-model-core svg { width: 100%; height: auto; max-height: 180px; display: block; margin-bottom: 25px; }
.pbm-model-core > span { color: #a1cfdf; font: 9px "DM Mono",monospace; letter-spacing: .08em; }
.pbm-model-core p { margin-bottom: 0; color: #edfaff; font-size: 12px; }
.pbm-model-core i { font-style: normal; color: #45d2e2; margin-inline: 6px; }
.pbm-model-output { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 20px; }
.pbm-model-output > div { padding: 15px 9px 0; border-top: 1px solid #396076; text-align: center; }
.pbm-model-output b,.pbm-model-output span { display: block; }
.pbm-model-output b { font-size: 13px; color: #66dce7; font-weight: 500; }
.pbm-model-output span { color: #9bb3c1; font-size: 10px; margin-top: 6px; line-height: 1.6; }
.pbm-model-figure figcaption { border-top: 1px solid #28404e; margin-top: 25px; padding-top: 14px; color: #8aa4b2; font-size: 10px; line-height: 1.6; }
.pbm-page-nav { display: flex; flex-wrap: wrap; gap: 8px 34px; padding: 20px max(32px,calc((100vw - 1352px)/2)); color: #344f5c; background: #eef3f5; border-bottom: 1px solid #cedde4; }
.pbm-page-nav a { font-size: 12px; line-height: 2; padding-block: 4px; }
.pbm-page-nav a:hover { color: #007992; text-decoration: underline; text-underline-offset: 6px; }
.pbm-discipline .pbm-problem { color: #203b48; font-weight: 500; }
.pbm-discipline p { font-size: 14px; }
.pbm-discipline small { display: block; border-top: 1px solid var(--pbm-rule); padding-top: 17px; margin-top: 23px; color: #527181; font-size: 11px; line-height: 1.7; }
.pbm-workflow { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--pbm-rule); }
.pbm-workflow li { display: grid; grid-template-columns: 48px minmax(0,1fr) minmax(220px,.58fr); gap: 30px; padding: 25px 0; border-bottom: 1px solid var(--pbm-rule); }
.pbm-workflow h3 { font-size: 19px; margin-bottom: 9px; }
.pbm-workflow p { font-size: 14px; margin: 0; max-width: 600px; }
.pbm-step { width: 39px; height: 39px; display: grid; place-items: center; border: 1px solid #386273; color: #62e1eb; font: 11px "DM Mono",monospace; }
.pbm-step-output { border-left: 1px solid #34505e; padding-left: 24px; align-self: center; }
.pbm-step-output span { display: block; font: 9px "DM Mono",monospace; text-transform: uppercase; color: #86a7b8; margin-bottom: 10px; letter-spacing: .08em; }
.pbm-step-output b { display: block; font-size: 13px; line-height: 1.6; font-weight: 450; }
#reference-demonstrator { background: #0c202c; border-top: 1px solid #26424f; }
.pbm-reference { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.3fr); gap: 7%; }
.pbm-reference-status { border: 1px solid #3e6272; padding: 30px; align-self: start; background: #102937; }
.pbm-status { display: inline-block; padding: 7px 10px; border: 1px solid #648188; font: 10px "DM Mono",monospace; color: #c4dce5; margin-bottom: 25px; }
.pbm-reference p { font-size: 14px; }
.pbm-evidence-list { padding: 0; margin: 0; list-style: none; counter-reset: evidence; }
.pbm-evidence-list li { display: grid; grid-template-columns: 25px 1fr; column-gap: 15px; border-bottom: 1px solid var(--pbm-rule); padding: 17px 0; counter-increment: evidence; }
.pbm-evidence-list li::before { content: "0" counter(evidence); grid-row: span 2; color: #5abbd0; font: 10px "DM Mono",monospace; padding-top: 3px; }
.pbm-evidence-list b { color: #e2eef4; font-size: 14px; font-weight: 500; }
.pbm-evidence-list span { display: block; color: #a2b8c4; font-size: 13px; line-height: 1.7; margin-top: 6px; }
.pbm-proof-types { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid var(--pbm-rule); margin-top: 52px; }
.pbm-proof-types article { padding: 28px 24px 0 0; }
.pbm-proof-types article > span,.pbm-role > span { font: 9px/1.6 "DM Mono",monospace; color: #79bdcc; text-transform: uppercase; letter-spacing: .07em; display: block; margin-bottom: 16px; }
.pbm-proof-types h3 { font-size: 17px; }
.pbm-proof-types p { font-size: 13px; }
.pbm-comparison { display: grid; grid-template-columns: minmax(0,1fr) 190px minmax(0,1fr); border: 1px solid var(--pbm-rule); }
.pbm-comparison article { padding: 33px; }
.pbm-comparison article > p { font-size: 14px; }
.pbm-comparison ul { margin: 22px 0 0; padding-left: 17px; color: #3e5c6c; font-size: 13px; line-height: 1.75; }
.pbm-comparison li+li { margin-top: 10px; }
.pbm-comparison-bridge { display: flex; flex-direction: column; justify-content: center; text-align: center; border-inline: 1px solid var(--pbm-rule); background: #eaf1f4; padding: 20px; }
.pbm-comparison-bridge > span { font-size: 42px; color: #098caa; }
.pbm-comparison-bridge > p { font-size: 11px; }
.pbm-industry-card { display: flex; flex-direction: column; }
.pbm-industry-card p { font-size: 14px; }
.pbm-industry-card .pbm-button { margin-top: auto; align-self: start; }
.pbm-application p,.pbm-application dd { font-size: 14px; }
.pbm-application dl { border-top: 1px solid var(--pbm-rule); padding-top: 16px; margin-top: 24px; }
.pbm-application dt { font: 10px "DM Mono",monospace; color: #007d98; margin-bottom: 9px; }
.pbm-application dd { margin: 0; line-height: 1.7; color: #526b79; }
.pbm-assurance-card h3,.pbm-role h3,.pbm-tool h3,.pbm-deliverable h3 { font-size: 19px; }
.pbm-assurance-card p,.pbm-role p,.pbm-tool p,.pbm-deliverable p { font-size: 14px; margin-bottom: 0; }
.pbm-assurance-card a { display: inline-block; color: #61d9e7; font-size: 12px; margin-top: 19px; }
.pbm-tool small { display: block; color: #527481; font-size: 11px; line-height: 1.7; margin-top: 20px; }
.pbm-tool-contract { display: grid; grid-template-columns: 1fr 2fr; gap: 32px; border-bottom: 1px solid var(--pbm-rule); padding: 28px 0; align-items: center; }
.pbm-tool-contract h3,.pbm-tool-contract p { margin: 0; }
.pbm-tool-contract h3 { font-size: 16px; }
.pbm-tool-contract p { font-size: 14px; }
.pbm-deliverable > span { display: block; margin-bottom: 24px; font: 11px "DM Mono",monospace; color: #60cfdd; }
.pbm-offers { border-top: 1px solid var(--pbm-rule); }
.pbm-offers details { border-bottom: 1px solid var(--pbm-rule); }
.pbm-offers summary { padding: 24px 0; display: grid; grid-template-columns: 48px 1fr 32px; gap: 20px; align-items: center; cursor: pointer; list-style: none; }
.pbm-offers summary::-webkit-details-marker { display: none; }
.pbm-offers summary .pbm-number,.pbm-offers summary h3 { margin: 0; }
.pbm-offers summary h3 { font-size: 23px; }
.pbm-expand { font-size: 22px; color: #007d98; text-align: right; }
.pbm-offers details[open] .pbm-expand { transform: rotate(45deg); }
.pbm-offer-body { padding: 0 52px 30px 68px; }
.pbm-offer-body dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 40px; margin: 0 0 24px; }
.pbm-offer-body dt { color: #007d98; font: 10px "DM Mono",monospace; text-transform: uppercase; margin-bottom: 9px; }
.pbm-offer-body dd { margin: 0; font-size: 14px; line-height: 1.7; color: #496472; }
.pbm-offer-time { grid-column: 1/-1; padding-top: 18px; border-top: 1px solid var(--pbm-rule); }
.pbm-offer-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid var(--pbm-rule); }
.pbm-offer-links a { display: flex; justify-content: space-between; gap: 20px; padding: 22px 20px 22px 0; border-bottom: 1px solid var(--pbm-rule); font-size: 16px; }
.pbm-offer-links a > span:last-child { color: #00829e; }
.pbm-final { background: radial-gradient(ellipse at 100% 100%,#15495f 0,transparent 65%),#071822; }
.pbm-final > p:not(.pbm-kicker) { max-width: 620px; font-size: 16px; margin-top: 24px; }
.pbm-brief-layout { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(0,1fr); gap: 8%; }
.pbm-brief label { display: block; font-size: 13px; font-weight: 550; color: #213e4d; margin-bottom: 10px; }
.pbm-brief label > span { color: #647d8b; font-size: 11px; font-weight: 400; }
.pbm-brief input,.pbm-brief select,.pbm-brief textarea { display: block; width: 100%; min-height: 46px; padding: 13px; border: 1px solid #bccfd9; background: #fff; color: #16313f; font: 14px/1.55 "Inter",sans-serif; border-radius: 0; margin-bottom: 22px; }
.pbm-brief textarea { resize: vertical; }
.pbm-brief :is(input,select,textarea):focus { outline: 2px solid #008ba8; outline-offset: 2px; }
.pbm-brief-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.pbm-brief-row > div { min-width: 0; }
.pbm-section .pbm-privacy { font-size: 12px; color: #526d7b; line-height: 1.7; }
.pbm-brief-status { min-height: 24px; }
#engineering-draft { border-top: 1px solid var(--pbm-rule); padding-top: 25px; margin-top: 10px; }
#engineering-draft[hidden] { display: none; }
.pbm-brief-aside { padding: 30px; align-self: start; background: #e8f0f4; border: 1px solid var(--pbm-rule); }
.pbm-brief-aside h3 { font-size: 27px; }
.pbm-brief-aside ol { padding: 0; margin: 28px 0; list-style: none; }
.pbm-brief-aside li { border-top: 1px solid #c2d5df; padding: 18px 0; }
.pbm-brief-aside b { display: block; font-size: 14px; font-weight: 550; }
.pbm-brief-aside li span { display: block; font-size: 13px; color: #496879; line-height: 1.7; margin-top: 7px; }
.pbm-brief-aside > a { display: block; margin-top: 12px; color: #006d85; font-size: 13px; }
@media (min-width: 1521px) { .pbm-section,.pbm-hero { width: 100%; max-width: none; } }
@media (max-width: 1100px) { .pbm-section,.pbm-hero { padding-inline: 32px; } .pbm-hero-grid { gap: 4%; } .pbm-grid > * { padding: 24px; } .pbm-home-grid { gap: 5%; } .pbm-home-path { padding-left: 25px; } .pbm-comparison { grid-template-columns: minmax(0,1fr) 140px minmax(0,1fr); } .pbm-model-figure { padding: 18px; } .pbm-hero h1 { font-size: 48px; } }
@media (max-width: 800px) { .pbm-section { padding-block: 60px; } .pbm-hero { padding-block: 125px 55px; } .pbm-hero-grid,.pbm-home-grid,.pbm-reference,.pbm-brief-layout { grid-template-columns: 1fr; gap: 38px; } .pbm-hero h1 { font-size: clamp(38px,7vw,60px); } .pbm-model-figure { max-width: 600px; width: 100%; } .pbm-home-path { border-left: 0; border-top: 1px solid var(--pbm-rule); padding: 28px 0 0; } .pbm-grid--three { grid-template-columns: repeat(2,minmax(0,1fr)); } .pbm-grid--three > :not(:nth-child(3n)) { border-right: 0; } .pbm-grid--three > :nth-child(odd) { border-right: 1px solid var(--pbm-rule); } .pbm-grid--three > :nth-child(n+3) { border-top: 1px solid var(--pbm-rule); } .pbm-workflow li { grid-template-columns: 40px 1fr; gap: 16px; } .pbm-step-output { grid-column: 2; margin-top: 4px; } .pbm-proof-types { grid-template-columns: repeat(2,minmax(0,1fr)); } .pbm-comparison { grid-template-columns: 1fr; } .pbm-comparison-bridge { flex-direction: row; align-items: center; gap: 25px; border-inline: 0; border-block: 1px solid var(--pbm-rule); } .pbm-comparison-bridge p { text-align: left; } .pbm-tool-contract { grid-template-columns: 1fr; gap: 12px; } .pbm-page-nav { padding-inline: 32px; gap: 8px 24px; } }
@media (max-width: 540px) { .pbm-section,.pbm-hero { padding-inline: 22px; } .pbm-hero { padding-top: 118px; } .pbm-section h2 { font-size: 33px; } .pbm-hero .pbm-kicker { font-size: 9px; } .pbm-hero .pbm-lead { font-size: 18px; } .pbm-grid--three,.pbm-grid--two,.pbm-proof-types,.pbm-offer-links,.pbm-offer-body dl,.pbm-brief-row { grid-template-columns: 1fr; } .pbm-grid--three > :nth-child(odd),.pbm-grid--two > :nth-child(odd) { border-right: 0; } .pbm-grid > * + * { border-top: 1px solid var(--pbm-rule); } .pbm-proof-types article+article { border-top: 1px solid var(--pbm-rule); } .pbm-proof-types article { padding-bottom: 16px; } .pbm-grid > * { padding: 25px; } .pbm-actions { align-items: stretch; flex-direction: column; } .pbm-button { width: 100%; gap: 15px; } .pbm-model-figure { padding: 16px; } .pbm-model-core { padding: 15px 9px; } .pbm-model-core p { font-size: 10px; } .pbm-model-inputs { font-size: 10px; gap: 8px; } .pbm-figure-top { font-size: 8px; } .pbm-model-output > div { padding-inline: 3px; } .pbm-model-output span { font-size: 9px; } .pbm-reference-status { padding: 25px; } .pbm-page-nav { padding-inline: 22px; gap: 4px 22px; } .pbm-page-nav a { font-size: 11px; } .pbm-offers summary { grid-template-columns: 25px 1fr 20px; gap: 14px; } .pbm-offers summary h3 { font-size: 19px; } .pbm-offer-body { padding: 0 0 26px 0; } .pbm-offer-body dl { gap: 19px; } .pbm-brief-aside { padding: 25px; } }
@media (prefers-reduced-motion: reduce) { .pbm-button { transition: none; } }
