.pd2-page { background: var(--surface-page); }
.pd2-hero { padding: 74px 0 82px; border-bottom: 1px solid var(--border-subtle); background: var(--surface-page); }
.pd2-hero-grid { display: grid; grid-template-columns: minmax(430px, 0.88fr) minmax(560px, 1.12fr); align-items: center; gap: 76px; }
.pd2-eyebrow { display: flex; align-items: center; gap: 9px; margin-bottom: 22px; color: var(--blue); font-size: 0.7rem; font-weight: 750; text-transform: uppercase; }
.pd2-eyebrow::before { width: 24px; height: 1px; content: ''; background: currentColor; }
.pd2-hero h1 { max-width: 720px; margin: 0; color: var(--navy); font-size: 4.6rem; font-weight: 680; line-height: 1; letter-spacing: 0; }
.pd2-hero-copy > p { max-width: 620px; margin: 26px 0 0; color: var(--slate-600); font-size: 1.05rem; line-height: 1.62; }
.pd2-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 30px; }
.pd2-proof { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 26px; color: var(--slate-600); font-size: 0.72rem; }
.pd2-proof span { display: flex; align-items: center; gap: 7px; }
.pd2-proof i { color: #16875b; }
.pd2-mock { min-width: 0; padding: 25px; border: 1px solid #cbd5e1; border-radius: 8px; background: #fff; box-shadow: 0 24px 56px rgba(20,38,66,0.12); }
.pd2-mock-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding-bottom: 17px; border-bottom: 1px solid var(--border-subtle); }
.pd2-mock-brand { display: flex; align-items: center; gap: 10px; }
.pd2-mock-brand > i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 5px; color: #fff; background: var(--navy); }
.pd2-mock-brand span { display: flex; flex-direction: column; }
.pd2-mock-brand strong { color: var(--navy); font-size: 0.78rem; }
.pd2-mock-brand small { color: var(--slate-500); font-size: 0.62rem; }
.pd2-status { padding: 5px 8px; border-radius: 4px; color: var(--blue); background: var(--brand-blue-soft); font-size: 0.62rem; font-style: normal; font-weight: 700; }
.pd2-mock-title { display: flex; justify-content: space-between; align-items: end; gap: 16px; padding: 22px 0 14px; }
.pd2-mock-title span { display: flex; flex-direction: column; gap: 4px; }
.pd2-mock-title small { color: var(--slate-500); font-size: 0.62rem; }
.pd2-mock-title strong { color: var(--navy); font-size: 0.88rem; }
.pd2-mock-title b { color: var(--slate-600); font-size: 0.68rem; }
.pd2-stage-list { display: grid; gap: 8px; }
.pd2-stage { display: grid; grid-template-columns: 30px 1fr auto; align-items: center; gap: 10px; min-height: 54px; padding: 10px 12px; border: 1px solid var(--border-subtle); border-radius: 5px; color: var(--slate-500); background: var(--surface-ui); transition: border-color 220ms var(--ease-out), background-color 220ms var(--ease-out), color 220ms var(--ease-out); }
.pd2-stage > i { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 4px; background: #e8edf3; }
.pd2-stage span { display: flex; flex-direction: column; }
.pd2-stage strong { color: var(--slate-700); font-size: 0.7rem; }
.pd2-stage small { font-size: 0.58rem; }
.pd2-stage em { font-size: 0.58rem; font-style: normal; }
.pd2-stage.is-active { color: var(--blue); border-color: var(--brand-blue-border); background: var(--brand-blue-soft); }
.pd2-stage.is-active > i { color: #fff; background: var(--blue); }
.pd2-stage.is-complete { color: #176649; background: #eff8f4; }
.pd2-stage.is-complete > i { color: #176649; background: #dcefe6; }
.pd2-problem { padding: 94px 0; }
.pd2-split { display: grid; grid-template-columns: minmax(350px, 0.78fr) minmax(520px, 1.22fr); gap: 92px; }
.pd2-split h2, .pd2-section-head h2, .pd2-feature-copy h2, .pd2-controls h2, .cp-ecosystem h2, .cp-outcomes h2 { margin: 0; color: var(--navy); font-size: 3.1rem; font-weight: 680; line-height: 1.08; letter-spacing: 0; }
.pd2-split > div > p { margin: 24px 0 0; color: var(--slate-600); line-height: 1.65; }
.pd2-problem-list { border-top: 1px solid var(--border-subtle); }
.pd2-problem-list article { display: grid; grid-template-columns: 38px 1fr; gap: 15px; padding: 22px 0; border-bottom: 1px solid var(--border-subtle); }
.pd2-problem-list article > i { color: var(--blue); font-size: 1.2rem; }
.pd2-problem-list h3 { margin: 0 0 6px; color: var(--navy); font-size: 1rem; }
.pd2-problem-list p { margin: 0; color: var(--slate-600); font-size: 0.84rem; line-height: 1.55; }
.pd2-workflow { padding: 88px 0; border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); background: var(--surface-secondary); }
.pd2-section-head { max-width: 800px; margin-bottom: 48px; }
.pd2-workflow-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.pd2-workflow-grid article { padding: 27px 25px; border-right: 1px solid var(--border-subtle); }
.pd2-workflow-grid article:last-child { border-right: 0; }
.pd2-workflow-grid b { color: var(--blue); font-size: 0.68rem; }
.pd2-workflow-grid i { display: block; margin: 24px 0 16px; color: var(--blue); font-size: 1.45rem; }
.pd2-workflow-grid h3 { margin: 0 0 8px; color: var(--navy); font-size: 1rem; }
.pd2-workflow-grid p { margin: 0; color: var(--slate-600); font-size: 0.78rem; line-height: 1.55; }
.cp-ecosystem { padding: 96px 0; }
.cp-ecosystem-grid { display: grid; grid-template-columns: minmax(390px, 0.82fr) minmax(580px, 1.18fr); align-items: center; gap: 82px; }
.cp-ecosystem-copy > p { margin: 24px 0 0; color: var(--slate-600); line-height: 1.65; }
.pd2-text-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 24px; color: var(--blue); font-size: 0.78rem; font-weight: 700; text-decoration: none; }
.pd2-text-link i { transition: transform 180ms var(--ease-out); }
.pd2-text-link:hover { color: var(--blue); text-decoration: underline; }
.pd2-text-link:hover i { transform: translateX(3px); }
.cp-ecosystem-flow { min-width: 0; display: grid; grid-template-columns: 1fr 26px 1fr 26px 1fr; align-items: center; padding: 23px; border: 1px solid #ccd5e0; border-radius: 8px; background: #fff; box-shadow: 0 18px 44px rgba(20,38,66,0.09); }
.cp-ecosystem-flow article { min-width: 0; min-height: 176px; display: flex; flex-direction: column; justify-content: center; padding: 18px; border: 1px solid var(--border-subtle); border-radius: 6px; background: var(--surface-ui); }
.cp-ecosystem-flow article.is-eva { border-color: var(--brand-blue-border); background: var(--brand-blue-soft); }
.cp-ecosystem-flow article > span { display: flex; align-items: center; gap: 7px; color: var(--blue); font-size: 0.62rem; font-weight: 750; text-transform: uppercase; }
.cp-ecosystem-flow article > strong { margin-top: 18px; color: var(--navy); font-size: 0.83rem; }
.cp-ecosystem-flow article > small { margin-top: 7px; color: var(--slate-500); font-size: 0.61rem; line-height: 1.5; }
.cp-flow-arrow { color: var(--slate-400); text-align: center; }
.pd2-feature { padding: 96px 0; }
.pd2-feature--alt { border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); background: var(--surface-secondary); }
.pd2-feature-grid { display: grid; grid-template-columns: minmax(390px, 0.84fr) minmax(560px, 1.16fr); align-items: center; gap: 82px; }
.pd2-feature-grid--reverse .pd2-feature-copy { order: 2; }
.pd2-feature-grid--reverse .pd2-feature-visual { order: 1; }
.pd2-feature-copy > p { margin: 24px 0 0; color: var(--slate-600); line-height: 1.65; }
.pd2-feature-visual { min-width: 0; padding: 24px; border: 1px solid #ccd5e0; border-radius: 8px; background: #fff; box-shadow: 0 18px 44px rgba(20,38,66,0.09); }
.pd2-feature-visual img { width: 100%; display: block; border-radius: 4px; }
.pd2-data-list { border-top: 1px solid var(--border-subtle); }
.pd2-data-list span { display: grid; grid-template-columns: 1fr auto; gap: 12px; padding: 17px 0; border-bottom: 1px solid var(--border-subtle); }
.pd2-data-list b { color: var(--navy); font-size: 0.78rem; }
.pd2-data-list em { color: var(--blue); font-size: 0.67rem; font-style: normal; font-weight: 700; }
.pd2-data-list small { grid-column: 1 / -1; color: var(--slate-500); }
.cp-outcomes { padding: 96px 0; border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); background: var(--surface-secondary); }
.cp-outcomes-head { max-width: 790px; }
.cp-outcomes-head > p { margin: 24px 0 0; color: var(--slate-600); line-height: 1.65; }
.cp-outcome-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 46px; }
.cp-outcome-grid > article { min-width: 0; padding: 27px; border: 1px solid #ccd5e0; border-radius: 8px; background: #fff; }
.cp-outcome-topline { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.cp-outcome-topline > span { color: var(--navy); font-size: 0.77rem; font-weight: 700; }
.cp-outcome-topline em { display: inline-flex; align-items: center; gap: 5px; flex: 0 0 auto; padding: 5px 8px; border-radius: 4px; color: var(--slate-600); background: #edf1f5; font-size: 0.58rem; font-style: normal; font-weight: 700; }
.cp-outcome-topline em.is-awarded { color: #176649; background: #eaf7f1; }
.cp-outcome-result { display: flex; align-items: baseline; gap: 9px; margin-top: 26px; color: var(--navy); font-size: 2.65rem; font-weight: 680; line-height: 1; }
.cp-outcome-result small { color: var(--slate-500); font-size: 0.69rem; font-weight: 650; text-transform: uppercase; }
.cp-budget-track { height: 6px; overflow: hidden; margin: 20px 0 23px; border-radius: 3px; background: #e4e9ef; }
.cp-budget-track span { width: var(--outcome-width); height: 100%; display: block; background: var(--blue); transform-origin: left; }
.cp-outcome-grid dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; border-top: 1px solid var(--border-subtle); }
.cp-outcome-grid dl > div { min-width: 0; padding: 17px 12px 0 0; }
.cp-outcome-grid dt { color: var(--slate-500); font-size: 0.56rem; font-weight: 600; }
.cp-outcome-grid dd { margin: 5px 0 0; color: var(--navy); font-size: 0.75rem; font-weight: 700; }
.pd2-controls { padding: 90px 0; }
.pd2-controls-grid { display: grid; grid-template-columns: minmax(340px, 0.75fr) minmax(520px, 1.25fr); gap: 92px; }
.pd2-control-list { border-top: 1px solid var(--border-subtle); }
.pd2-control-list article { display: grid; grid-template-columns: 34px 1fr; gap: 14px; padding: 21px 0; border-bottom: 1px solid var(--border-subtle); }
.pd2-control-list i { color: var(--blue); font-size: 1.1rem; }
.pd2-control-list h3 { margin: 0 0 5px; color: var(--navy); font-size: 0.92rem; }
.pd2-control-list p { margin: 0; color: var(--slate-600); font-size: 0.8rem; line-height: 1.55; }
.portal-demo { min-width: 0; overflow: hidden; border: 1px solid #cbd5e1; border-radius: 8px; background: #fff; box-shadow: 0 24px 56px rgba(20,38,66,0.12); }
.portal-demo-head { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 17px; border-bottom: 1px solid var(--border-subtle); }
.portal-demo-head > div { display: flex; align-items: center; gap: 10px; }
.portal-demo-head > div > span:last-child { display: flex; flex-direction: column; }
.portal-demo-head strong { color: var(--navy); font-size: 0.76rem; }
.portal-demo-head small { color: var(--slate-500); font-size: 0.6rem; }
.portal-demo-head > em { display: inline-flex; align-items: center; gap: 6px; color: var(--slate-600); font-size: 0.63rem; font-style: normal; font-weight: 700; }
.portal-demo-mark { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 5px; color: #fff; background: var(--navy); }
.portal-demo-tabs { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); padding: 0 14px; border-bottom: 1px solid var(--border-subtle); }
.portal-demo-tabs button { position: relative; z-index: 1; min-height: 44px; padding: 8px 5px; border: 0; color: var(--slate-500); background: transparent; font-size: 0.66rem; font-weight: 700; }
.portal-demo-tabs button[aria-selected="true"] { color: var(--blue); }
.portal-demo-tab-indicator { position: absolute; bottom: -1px; left: 14px; width: calc((100% - 28px) / 3); height: 2px; background: var(--blue); transform: translateX(var(--demo-tab-x, 0)); transition: transform 260ms var(--ease-out); }
.portal-demo-stage { position: relative; height: 350px; overflow: hidden; background: var(--surface-ui); }
.portal-demo-view { position: absolute; inset: 0; padding: 17px; visibility: hidden; opacity: 0; transform: translateX(12px); transition: opacity 220ms var(--ease-out), transform 260ms var(--ease-out), visibility 0s linear 260ms; }
.portal-demo-view.is-active { visibility: visible; opacity: 1; transform: none; transition-delay: 0s; }
.portal-demo-foot { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 17px; border-top: 1px solid var(--border-subtle); color: var(--slate-500); font-size: 0.57rem; }
.portal-demo-foot span { display: inline-flex; align-items: center; gap: 6px; }
.portal-demo-foot i { color: #16875b; }
.cp-metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 7px; }
.cp-metrics > span { min-width: 0; padding: 10px; border: 1px solid var(--border-subtle); border-radius: 5px; background: #fff; }
.cp-metrics small, .cp-summary small, .cp-detail-grid small { display: block; color: var(--slate-500); font-size: 0.5rem; text-transform: uppercase; }
.cp-metrics strong { display: block; margin-top: 4px; color: var(--navy); font-size: 0.92rem; }
.is-positive, .cp-metrics .is-positive strong { color: #147a54 !important; }
.cp-view-head { display: flex; align-items: end; justify-content: space-between; gap: 12px; margin: 18px 0 9px; }
.cp-view-head > span { display: flex; flex-direction: column; }
.cp-view-head strong { color: var(--navy); font-size: 0.72rem; }
.cp-view-head small { color: var(--slate-500); font-size: 0.56rem; }
.cp-view-head > em { padding: 4px 7px; border-radius: 4px; color: var(--blue); background: var(--brand-blue-soft); font-size: 0.54rem; font-style: normal; }
.cp-event-list { display: grid; gap: 8px; }
.cp-event-list article { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 12px; padding: 11px; border: 1px solid var(--border-subtle); border-radius: 5px; background: #fff; }
.cp-event-list article.is-selected { border-color: var(--brand-blue-border); box-shadow: inset 3px 0 0 var(--blue); }
.cp-event-list article > span { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.cp-event-list em, .cp-event-title em { align-self: flex-start; padding: 3px 6px; border-radius: 10px; color: #176649; background: #eaf7f1; font-size: 0.49rem; font-style: normal; }
.cp-event-list em.is-review, .cp-event-title em { color: #8d4810; background: #fff1df; }
.cp-event-list strong, .cp-event-title strong { color: var(--navy); font-size: 0.67rem; }
.cp-event-list small, .cp-event-title small { color: var(--slate-500); font-size: 0.54rem; }
.cp-event-list article > b { color: var(--navy); font-size: 0.7rem; text-align: right; }
.cp-event-list article > b small { display: block; margin-top: 2px; font-weight: 500; }
.cp-event-title { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 14px; padding-bottom: 15px; border-bottom: 1px solid var(--border-subtle); }
.cp-event-title > span { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.cp-event-title > b { color: var(--blue); font-size: 1.2rem; text-align: right; }
.cp-event-title > b small { display: block; color: var(--slate-500); font-size: 0.5rem; font-weight: 500; }
.cp-summary { display: grid; grid-template-columns: repeat(3, 1fr); margin: 14px 0; border: 1px solid var(--border-subtle); border-radius: 5px; background: #fff; }
.cp-summary span { padding: 12px; border-right: 1px solid var(--border-subtle); }
.cp-summary span:last-child { border-right: 0; }
.cp-summary strong { display: block; margin-top: 5px; color: var(--navy); font-size: 0.75rem; }
.cp-detail-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--border-subtle); }
.cp-detail-grid span { padding: 12px 6px; border-bottom: 1px solid var(--border-subtle); }
.cp-detail-grid strong { display: block; margin-top: 4px; color: var(--navy); font-size: 0.61rem; }
.cp-bid-table { overflow: hidden; border: 1px solid var(--border-subtle); border-radius: 5px; background: #fff; }
.cp-bid-head, .cp-bid-row { display: grid; grid-template-columns: 44px minmax(120px, 1fr) 88px 62px; align-items: center; gap: 8px; }
.cp-bid-head { padding: 8px 10px; color: var(--slate-500); background: #edf1f5; font-size: 0.49rem; text-transform: uppercase; }
.cp-bid-row { min-height: 61px; padding: 9px 10px; border-top: 1px solid var(--border-subtle); }
.cp-bid-row.is-leading { background: #eff8f4; }
.cp-bid-row > b { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: #16875b; font-size: 0.58rem; }
.cp-bid-row > span { display: flex; flex-direction: column; }
.cp-bid-row strong { color: var(--navy); font-size: 0.62rem; }
.cp-bid-row small { color: var(--slate-500); font-size: 0.51rem; }
.cp-bid-row > em { color: #16875b; font-size: 0.6rem; font-style: normal; font-weight: 700; }
.cat-view-head, .cat-request-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.cat-view-head > span, .cat-request-head > span { display: flex; flex-direction: column; }
.cat-view-head strong, .cat-request-head strong { color: var(--navy); font-size: 0.74rem; }
.cat-view-head small, .cat-request-head small { color: var(--slate-500); font-size: 0.55rem; }
.cat-view-head > i { color: var(--blue); }
.cat-category-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.cat-category-grid article { min-height: 104px; display: flex; align-items: center; gap: 11px; padding: 13px; border: 1px solid var(--border-subtle); border-radius: 6px; background: #fff; }
.cat-category-grid article:first-child { border-color: var(--brand-blue-border); }
.cat-category-grid article > i { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 5px; color: var(--blue); background: var(--brand-blue-soft); font-size: 1.05rem; }
.cat-category-grid span { display: flex; flex-direction: column; }
.cat-category-grid strong { color: var(--navy); font-size: 0.63rem; }
.cat-category-grid small { margin-top: 3px; color: var(--slate-500); font-size: 0.53rem; }
.cat-search-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 12px; }
.cat-search-row > span { flex: 1; padding: 9px 11px; border: 1px solid var(--border-subtle); border-radius: 5px; color: var(--slate-500); background: #fff; font-size: 0.58rem; }
.cat-search-row > span i { margin-right: 6px; }
.cat-search-row > em { padding: 7px 9px; border-radius: 12px; color: var(--blue); background: var(--brand-blue-soft); font-size: 0.5rem; font-style: normal; white-space: nowrap; }
.cat-shop-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.cat-shop-grid article { min-width: 0; padding: 9px; border: 1px solid var(--border-subtle); border-radius: 5px; background: #fff; }
.cat-shop-grid article.is-selected { border-color: var(--brand-blue-border); box-shadow: inset 0 -3px 0 var(--blue); }
.cat-shop-grid article > div { position: relative; height: 78px; display: grid; place-items: center; margin: -9px -9px 9px; color: var(--blue); background: #edf1f5; font-size: 1.7rem; }
.cat-shop-grid article > div em { position: absolute; top: 6px; right: 6px; padding: 3px 5px; border-radius: 8px; color: #fff; background: var(--blue); font-size: 0.43rem; font-style: normal; }
.cat-shop-grid article > small { color: var(--slate-500); font-size: 0.47rem; text-transform: uppercase; }
.cat-shop-grid article > strong { min-height: 30px; display: block; margin: 5px 0; color: var(--navy); font-size: 0.59rem; }
.cat-shop-grid article > span { display: flex; align-items: baseline; gap: 6px; }
.cat-shop-grid del { color: var(--slate-400); font-size: 0.47rem; }
.cat-shop-grid b { color: var(--navy); font-size: 0.68rem; }
.cat-request-head > em { padding: 5px 7px; border-radius: 4px; color: #176649; background: #eaf7f1; font-size: 0.5rem; font-style: normal; }
.cat-request-list { border-top: 1px solid var(--border-subtle); }
.cat-request-list article { display: grid; grid-template-columns: 30px 1fr auto; align-items: center; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--border-subtle); }
.cat-request-list article > i { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 4px; color: var(--blue); background: var(--brand-blue-soft); }
.cat-request-list span { display: flex; flex-direction: column; }
.cat-request-list strong { color: var(--navy); font-size: 0.62rem; }
.cat-request-list small { color: var(--slate-500); font-size: 0.51rem; }
.cat-request-list b { color: var(--navy); font-size: 0.64rem; }
.cat-request-total { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; padding: 12px; border-radius: 5px; color: #176649; background: #eaf7f1; font-size: 0.52rem; }
.cat-request-total span { display: inline-flex; align-items: center; gap: 6px; }
.cat-request-total strong { color: var(--navy); font-size: 0.82rem; }
.pd2-final { padding: 72px 0; color: #fff; background: var(--navy); }
.pd2-final .container { display: flex; align-items: center; justify-content: space-between; gap: 42px; }
.pd2-final span { color: #91a7c2; font-size: 0.7rem; font-weight: 700; text-transform: uppercase; }
.pd2-final h2 { max-width: 800px; margin: 8px 0 0; color: #fff; font-size: 2.8rem; font-weight: 650; line-height: 1.08; }
@media (max-width: 991.98px) { .pd2-hero-grid, .pd2-split, .pd2-feature-grid, .pd2-controls-grid, .cp-ecosystem-grid { grid-template-columns: 1fr; gap: 48px; } .pd2-feature-grid--reverse .pd2-feature-copy { order: 1; } .pd2-feature-grid--reverse .pd2-feature-visual { order: 2; } .pd2-hero h1 { font-size: 4rem; } .pd2-workflow-grid { grid-template-columns: 1fr 1fr; } .pd2-workflow-grid article:nth-child(2) { border-right: 0; } .pd2-workflow-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--border-subtle); } }
@media (max-width: 767.98px) { .pd2-hero { padding: 56px 0 66px; } .pd2-hero h1 { font-size: 3rem; } .pd2-mock { padding: 20px 15px; } .pd2-problem, .pd2-workflow, .pd2-feature, .pd2-controls, .cp-ecosystem, .cp-outcomes { padding: 70px 0; } .pd2-split h2, .pd2-section-head h2, .pd2-feature-copy h2, .pd2-controls h2, .cp-ecosystem h2, .cp-outcomes h2 { font-size: 2.35rem; } .pd2-workflow-grid { grid-template-columns: 1fr; } .pd2-workflow-grid article { border-right: 0; border-bottom: 1px solid var(--border-subtle); } .pd2-workflow-grid article:last-child { border-bottom: 0; } .cp-ecosystem-flow { grid-template-columns: 1fr; gap: 10px; padding: 15px; } .cp-ecosystem-flow article { min-height: 0; } .cp-flow-arrow { transform: rotate(90deg); } .cp-outcome-grid { grid-template-columns: 1fr; } .cp-outcome-grid dl { grid-template-columns: 1fr; } .cp-outcome-grid dl > div { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; padding: 13px 0; border-bottom: 1px solid var(--border-subtle); } .cp-outcome-grid dd { margin: 0; text-align: right; } .pd2-final .container { align-items: flex-start; flex-direction: column; } .pd2-final h2 { font-size: 2.2rem; } .portal-demo-stage { height: 370px; } .portal-demo-view { padding: 13px; } .portal-demo-foot { align-items: flex-start; flex-direction: column; } .cp-metrics { grid-template-columns: 1fr 1fr; } .cp-metrics > span { padding: 8px; } .cp-bid-head, .cp-bid-row { grid-template-columns: 34px minmax(92px, 1fr) 68px 44px; gap: 5px; } .cat-category-grid { gap: 7px; } .cat-category-grid article { min-height: 94px; padding: 9px; } .cat-category-grid article > i { width: 32px; height: 32px; } .cat-shop-grid { gap: 5px; } .cat-shop-grid article { padding: 7px; } .cat-shop-grid article > div { height: 70px; margin: -7px -7px 7px; } }
@media (prefers-reduced-motion: reduce) { .portal-demo-tab-indicator, .portal-demo-view { transition: none; } }

/* EVA: evidence-led evaluation workbench */
.eva-hero .pd2-hero-grid { grid-template-columns: minmax(430px, 0.9fr) minmax(600px, 1.1fr); }
.eva-desk { min-width: 0; overflow: hidden; border: 1px solid #cbd5e1; border-radius: 8px; background: #fff; box-shadow: 0 24px 56px rgba(20,38,66,0.12); }
.eva-desk-head { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 17px; border-bottom: 1px solid var(--border-subtle); }
.eva-desk-head > span { display: grid; grid-template-columns: 34px auto; align-items: center; column-gap: 10px; }
.eva-desk-head > span > i { grid-row: 1 / 3; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 5px; color: #fff; background: var(--navy); }
.eva-desk-head b { color: var(--navy); font-size: 0.75rem; }
.eva-desk-head small { color: var(--slate-500); font-size: 0.58rem; }
.eva-desk-head em { color: var(--slate-600); font-size: 0.6rem; font-style: normal; font-weight: 700; }
.eva-desk-tabs { display: grid; grid-template-columns: repeat(3, 1fr); padding: 0 14px; border-bottom: 1px solid var(--border-subtle); }
.eva-desk-tabs button { min-height: 43px; border: 0; border-bottom: 2px solid transparent; color: var(--slate-500); background: transparent; font-size: 0.65rem; font-weight: 700; transition: color 180ms var(--ease-out), border-color 180ms var(--ease-out); }
.eva-desk-tabs button[aria-selected="true"] { color: var(--blue); border-bottom-color: var(--blue); }
.eva-desk-stage { position: relative; height: 320px; overflow: hidden; background: var(--surface-ui); }
.eva-desk-view { position: absolute; inset: 0; padding: 18px; visibility: hidden; opacity: 0; transform: translateX(12px); transition: opacity 220ms var(--ease-out), transform 260ms var(--ease-out), visibility 0s linear 260ms; }
.eva-desk-view.is-active { visibility: visible; opacity: 1; transform: none; transition-delay: 0s; }
.eva-requirement { display: flex; flex-direction: column; gap: 5px; padding: 12px 13px; border-left: 3px solid var(--blue); background: #fff; }
.eva-requirement span { color: var(--blue); font-size: 0.52rem; font-weight: 750; text-transform: uppercase; }
.eva-requirement strong { color: var(--navy); font-size: 0.7rem; line-height: 1.35; }
.eva-coverage-row, .eva-risk-item { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 12px; padding: 13px 4px; border-bottom: 1px solid var(--border-subtle); }
.eva-coverage-row span, .eva-risk-item span { display: flex; min-width: 0; flex-direction: column; }
.eva-coverage-row b, .eva-risk-item b { color: var(--navy); font-size: 0.64rem; }
.eva-coverage-row small, .eva-risk-item small { margin-top: 3px; color: var(--slate-500); font-size: 0.53rem; }
.eva-coverage-row em, .eva-risk-item em { padding: 4px 6px; border-radius: 4px; color: #9a3e38; background: #fbeceb; font-size: 0.49rem; font-style: normal; font-weight: 700; }
.eva-coverage-row em.is-covered { color: #176649; background: #eaf7f1; }
.eva-coverage-row em.is-partial { color: #8d4810; background: #fff1df; }
.eva-risk-item { grid-template-columns: 26px 1fr auto; }
.eva-risk-item > i { color: #9a3e38; }
.eva-risk-item.is-resolved > i { color: #176649; }
.eva-risk-item.is-resolved em { color: #176649; background: #eaf7f1; }
.eva-desk-view blockquote { margin: 17px 0 13px; padding: 16px 17px; border: 1px solid var(--brand-blue-border); border-radius: 5px; color: var(--navy); background: var(--brand-blue-soft); font-size: 0.67rem; line-height: 1.55; }
.eva-desk-view > a { display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 10px; padding: 11px; border: 1px solid var(--border-subtle); border-radius: 5px; color: inherit; background: #fff; text-decoration: none; }
.eva-desk-view > a > i:first-child { color: var(--blue); }
.eva-desk-view > a span { display: flex; flex-direction: column; }
.eva-desk-view > a b { color: var(--navy); font-size: 0.62rem; }
.eva-desk-view > a small { color: var(--slate-500); font-size: 0.52rem; }
.eva-desk-view > a > i:last-child { color: var(--slate-500); }
.eva-desk-foot { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 17px; border-top: 1px solid var(--border-subtle); color: var(--slate-500); font-size: 0.57rem; }
.eva-desk-foot span { display: inline-flex; align-items: center; gap: 6px; }
.eva-desk-foot i { color: var(--blue); }
.eva-context { padding: 96px 0; }
.eva-context-grid { display: grid; grid-template-columns: minmax(380px, 0.82fr) minmax(560px, 1.18fr); gap: 88px; }
.eva-context h2, .eva-workbench h2, .eva-decision h2, .cat-choice-gap h2, .cat-path h2, .cat-guardrails h2, .sorbee-fragment h2, .sorbee-lane h2, .sorbee-conditional h2, .sorbee-controls h2 { margin: 0; color: var(--navy); font-size: 3.1rem; font-weight: 680; line-height: 1.08; letter-spacing: 0; }
.eva-context-lines { border-top: 1px solid var(--border-subtle); }
.eva-context-lines article { display: grid; grid-template-columns: 34px 1fr; gap: 14px; padding: 21px 0; border-bottom: 1px solid var(--border-subtle); }
.eva-context-lines i { color: var(--blue); font-size: 1.1rem; }
.eva-context-lines span { display: flex; flex-direction: column; }
.eva-context-lines strong { color: var(--navy); font-size: 0.88rem; }
.eva-context-lines small { margin-top: 5px; color: var(--slate-600); font-size: 0.76rem; line-height: 1.5; }
.eva-workbench { padding: 104px 0; border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); background: var(--surface-secondary); }
.eva-workbench-grid { display: grid; grid-template-columns: minmax(320px, 0.65fr) minmax(650px, 1.35fr); align-items: start; gap: 84px; }
.eva-workbench-intro { position: sticky; top: 110px; }
.eva-workbench-intro > p { margin: 23px 0 0; color: var(--slate-600); line-height: 1.62; }
.eva-review-stack { display: grid; gap: 22px; }
.eva-review-stack > article { overflow: hidden; border: 1px solid #ccd5e0; border-radius: 8px; background: #fff; }
.eva-review-stack > article > div { padding: 26px; }
.eva-review-stack > article > div > span { color: var(--blue); font-size: 0.62rem; font-weight: 750; text-transform: uppercase; }
.eva-review-stack h3 { margin: 9px 0 0; color: var(--navy); font-size: 1.45rem; font-weight: 650; line-height: 1.18; }
.eva-review-stack p { margin: 10px 0 0; color: var(--slate-600); font-size: 0.82rem; line-height: 1.55; }
.eva-review-stack figure { margin: 0; padding: 0 18px 17px; }
.eva-review-stack img { width: 100%; display: block; border: 1px solid var(--border-subtle); border-radius: 4px; }
.eva-review-stack figcaption { padding-top: 9px; color: var(--slate-500); font-size: 0.57rem; }
.eva-decision { padding: 96px 0; }
.eva-decision-head { max-width: 820px; }
.eva-decision-flow { display: grid; grid-template-columns: 1fr 32px 1fr 32px 1fr; align-items: center; margin-top: 48px; border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.eva-decision-flow article { min-height: 150px; display: grid; grid-template-columns: 36px 1fr; align-items: center; gap: 14px; padding: 24px; }
.eva-decision-flow article > i { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 5px; color: var(--blue); background: var(--brand-blue-soft); }
.eva-decision-flow article span { display: flex; flex-direction: column; }
.eva-decision-flow strong { color: var(--navy); font-size: 0.84rem; }
.eva-decision-flow small { margin-top: 5px; color: var(--slate-500); font-size: 0.65rem; line-height: 1.45; }
.eva-decision-flow > i { color: var(--slate-400); text-align: center; }
.eva-cherry-link { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; margin-top: 30px; padding: 20px 22px; border: 1px solid var(--brand-blue-border); border-radius: 6px; background: var(--brand-blue-soft); }
.eva-cherry-link > span { display: flex; align-items: center; gap: 8px; color: var(--navy); font-size: 0.76rem; }
.eva-cherry-link > span i { color: var(--blue); }
.eva-cherry-link p { margin: 0; color: var(--slate-600); font-size: 0.71rem; line-height: 1.5; }
.eva-cherry-link a { display: inline-flex; align-items: center; gap: 6px; color: var(--blue); font-size: 0.68rem; font-weight: 700; white-space: nowrap; }

/* Catalogue: transactional guided buying */
.cat-choice-gap { padding: 96px 0; }
.cat-choice-head { max-width: 850px; }
.cat-choice-head > p { max-width: 720px; margin: 23px 0 0; color: var(--slate-600); line-height: 1.62; }
.cat-choice-contrast { display: grid; grid-template-columns: 1fr 40px 1fr; align-items: stretch; margin-top: 46px; }
.cat-choice-contrast > div { min-height: 180px; display: flex; flex-direction: column; justify-content: center; padding: 28px; border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.cat-choice-contrast > div:first-child { border-left: 1px solid var(--border-subtle); }
.cat-choice-contrast > div.is-guided { border: 1px solid var(--brand-blue-border); background: var(--brand-blue-soft); }
.cat-choice-contrast > i { display: grid; place-items: center; color: var(--slate-400); border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.cat-choice-contrast span { color: var(--slate-500); font-size: 0.62rem; font-weight: 700; text-transform: uppercase; }
.cat-choice-contrast strong { margin-top: 12px; color: var(--navy); font-size: 1.25rem; }
.cat-choice-contrast small { margin-top: 7px; color: var(--slate-600); font-size: 0.72rem; }
.cat-path { padding: 100px 0; border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); background: var(--surface-secondary); }
.cat-path-head { display: grid; grid-template-columns: minmax(460px, 0.9fr) minmax(420px, 1.1fr); align-items: end; gap: 80px; }
.cat-path-head > p { margin: 0; color: var(--slate-600); line-height: 1.62; }
.cat-path-list { margin-top: 54px; border-top: 1px solid var(--border-subtle); }
.cat-path-list > article { display: grid; grid-template-columns: 100px minmax(330px, 0.8fr) minmax(480px, 1.2fr); align-items: center; gap: 42px; min-height: 280px; padding: 36px 0; border-bottom: 1px solid var(--border-subtle); }
.cat-path-index { align-self: stretch; display: flex; flex-direction: column; justify-content: space-between; padding-right: 24px; border-right: 1px solid var(--border-subtle); }
.cat-path-index b { color: var(--blue); font-size: 0.68rem; }
.cat-path-index i { color: var(--blue); font-size: 1.55rem; }
.cat-path-copy > span { color: var(--blue); font-size: 0.62rem; font-weight: 750; text-transform: uppercase; }
.cat-path-copy h3 { margin: 8px 0 0; color: var(--navy); font-size: 1.55rem; font-weight: 650; line-height: 1.18; }
.cat-path-copy p { margin: 13px 0 0; color: var(--slate-600); font-size: 0.82rem; line-height: 1.58; }
.cat-path-ui { min-width: 0; padding: 20px; border: 1px solid #ccd5e0; border-radius: 8px; background: #fff; box-shadow: 0 14px 34px rgba(20,38,66,0.07); }
.cat-path-ui--search > div { display: flex; align-items: center; gap: 9px; padding: 11px; border: 1px solid var(--border-subtle); border-radius: 5px; color: var(--slate-500); font-size: 0.65rem; }
.cat-path-ui--search > p { display: grid; grid-template-columns: 30px 1fr auto; align-items: center; gap: 10px; margin: 11px 0 0; padding: 9px 0; border-bottom: 1px solid var(--border-subtle); }
.cat-path-ui--search > p > i { color: var(--blue); }
.cat-path-ui--search > p span { display: flex; flex-direction: column; }
.cat-path-ui--search b, .cat-path-ui--choice b { color: var(--navy); font-size: 0.68rem; }
.cat-path-ui--search small { color: var(--slate-500); font-size: 0.53rem; }
.cat-path-ui--search em { color: var(--blue); font-size: 0.56rem; font-style: normal; font-weight: 700; }
.cat-path-ui--choice { display: grid; grid-template-columns: 76px 1fr auto; align-items: center; gap: 16px; }
.cat-path-ui--choice > span { width: 76px; height: 76px; display: grid; place-items: center; border-radius: 5px; color: var(--blue); background: #edf1f5; font-size: 1.8rem; }
.cat-path-ui--choice > div { display: flex; flex-direction: column; }
.cat-path-ui--choice small { color: var(--slate-500); font-size: 0.53rem; }
.cat-path-ui--choice > div > p { display: flex; align-items: baseline; gap: 8px; margin: 7px 0 0; }
.cat-path-ui--choice del { color: var(--slate-400); font-size: 0.58rem; }
.cat-path-ui--choice strong { color: var(--navy); font-size: 0.87rem; }
.cat-path-ui--choice > em { padding: 5px 7px; border-radius: 4px; color: #176649; background: #eaf7f1; font-size: 0.54rem; font-style: normal; font-weight: 700; white-space: nowrap; }
.cat-path-ui--submit > div { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 0 16px; border-bottom: 1px solid var(--border-subtle); }
.cat-path-ui--submit > div span { display: inline-flex; align-items: center; gap: 7px; color: #176649; font-size: 0.65rem; font-weight: 700; }
.cat-path-ui--submit > div b { color: var(--navy); font-size: 1.15rem; }
.cat-path-ui--submit dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 15px 0 0; }
.cat-path-ui--submit dl > div { border-right: 1px solid var(--border-subtle); }
.cat-path-ui--submit dl > div:last-child { border-right: 0; }
.cat-path-ui--submit dt { color: var(--slate-500); font-size: 0.52rem; }
.cat-path-ui--submit dd { margin: 4px 0 0; color: var(--navy); font-size: 0.68rem; font-weight: 700; }
.cat-guardrails { padding: 96px 0; }
.cat-guardrails-grid { display: grid; grid-template-columns: minmax(380px, 0.78fr) minmax(580px, 1.22fr); gap: 90px; }
.cat-guardrails-grid > div:first-child > p { margin: 23px 0 0; color: var(--slate-600); line-height: 1.62; }
.cat-rule-list { border-top: 1px solid var(--border-subtle); }
.cat-rule-list article { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 14px; padding: 21px 0; border-bottom: 1px solid var(--border-subtle); }
.cat-rule-list article > i { color: var(--blue); font-size: 1.1rem; }
.cat-rule-list article span { display: flex; flex-direction: column; }
.cat-rule-list strong { color: var(--navy); font-size: 0.83rem; }
.cat-rule-list small { margin-top: 5px; color: var(--slate-600); font-size: 0.7rem; }
.cat-rule-list em { color: var(--blue); font-size: 0.58rem; font-style: normal; font-weight: 700; white-space: nowrap; }

/* Sorbee: supplier-to-ERP operating lane */
.sorbee-fragment { padding: 96px 0; }
.sorbee-fragment-grid { display: grid; grid-template-columns: minmax(390px, 0.8fr) minmax(580px, 1.2fr); align-items: center; gap: 88px; }
.sorbee-fragment-grid > div:first-child > p { margin: 23px 0 0; color: var(--slate-600); line-height: 1.62; }
.sorbee-record-shift { display: grid; grid-template-columns: 1fr 34px 1fr; align-items: center; gap: 14px; }
.sorbee-record-shift > i { color: var(--slate-400); text-align: center; }
.sorbee-fragments { display: grid; gap: 9px; }
.sorbee-fragments span { display: flex; align-items: center; gap: 9px; padding: 12px; border: 1px solid var(--border-subtle); border-radius: 5px; color: var(--slate-600); background: #fff; font-size: 0.65rem; }
.sorbee-fragments i { color: var(--blue); }
.sorbee-record-card { min-height: 220px; display: flex; flex-direction: column; justify-content: center; padding: 24px; border: 1px solid var(--brand-blue-border); border-radius: 8px; background: var(--brand-blue-soft); }
.sorbee-record-card > span { display: flex; align-items: center; gap: 7px; color: var(--blue); font-size: 0.61rem; font-weight: 750; text-transform: uppercase; }
.sorbee-record-card > strong { margin-top: 22px; color: var(--navy); font-size: 1.55rem; }
.sorbee-record-card > small { margin-top: 7px; color: var(--slate-600); font-size: 0.66rem; line-height: 1.48; }
.sorbee-record-card > em { display: flex; align-items: center; gap: 6px; margin-top: 22px; color: #176649; font-size: 0.59rem; font-style: normal; font-weight: 700; }
.sorbee-lane { padding: 100px 0; border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); background: var(--surface-secondary); }
.sorbee-lane-head { display: grid; grid-template-columns: minmax(480px, 0.92fr) minmax(420px, 1.08fr); align-items: end; gap: 82px; }
.sorbee-lane-head > p { margin: 0; color: var(--slate-600); line-height: 1.62; }
.sorbee-swimlane { margin-top: 52px; border-top: 1px solid var(--border-subtle); border-left: 1px solid var(--border-subtle); background: #fff; }
.sorbee-lane-label, .sorbee-lane-row { display: grid; grid-template-columns: 150px repeat(4, 1fr); }
.sorbee-lane-label > * { padding: 11px 14px; border-right: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); color: var(--slate-500); font-size: 0.54rem; text-transform: uppercase; }
.sorbee-lane-label b { text-align: center; }
.sorbee-lane-row > span, .sorbee-lane-row > article, .sorbee-lane-row > div { min-width: 0; min-height: 142px; display: flex; flex-direction: column; justify-content: center; padding: 16px; border-right: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.sorbee-lane-row > span { background: #f4f6f8; }
.sorbee-lane-row > span > i { color: var(--blue); font-size: 1.1rem; }
.sorbee-lane-row > span b { margin-top: 11px; color: var(--navy); font-size: 0.72rem; }
.sorbee-lane-row > span small { margin-top: 3px; color: var(--slate-500); font-size: 0.54rem; }
.sorbee-lane-row article > i { color: var(--blue); }
.sorbee-lane-row article b { margin-top: 12px; color: var(--navy); font-size: 0.67rem; }
.sorbee-lane-row article small, .sorbee-lane-empty small { margin-top: 4px; color: var(--slate-500); font-size: 0.54rem; line-height: 1.4; }
.sorbee-lane-row.is-procurement article { background: var(--brand-blue-soft); }
.sorbee-lane-empty { align-items: center; color: var(--slate-400); text-align: center; }
.sorbee-conditional { padding: 100px 0; }
.sorbee-conditional-grid { display: grid; grid-template-columns: minmax(570px, 1.16fr) minmax(390px, 0.84fr); align-items: center; gap: 88px; }
.sorbee-conditional-grid > div:last-child > p { margin: 23px 0 0; color: var(--slate-600); line-height: 1.62; }
.sorbee-checklist { overflow: hidden; border: 1px solid #ccd5e0; border-radius: 8px; background: #fff; box-shadow: 0 18px 44px rgba(20,38,66,0.09); }
.sorbee-checklist-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px; border-bottom: 1px solid var(--border-subtle); }
.sorbee-checklist-head > span { display: flex; align-items: center; gap: 8px; color: var(--navy); font-size: 0.75rem; }
.sorbee-checklist-head i { color: var(--blue); }
.sorbee-checklist-head em { color: var(--slate-500); font-size: 0.57rem; font-style: normal; }
.sorbee-check-row { display: grid; grid-template-columns: 30px 1fr auto; align-items: center; gap: 12px; min-height: 74px; padding: 13px 18px; border-bottom: 1px solid var(--border-subtle); }
.sorbee-check-row:last-child { border-bottom: 0; }
.sorbee-check-row > i { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 4px; color: var(--blue); background: var(--brand-blue-soft); }
.sorbee-check-row.is-complete > i { color: #176649; background: #eaf7f1; }
.sorbee-check-row span { display: flex; flex-direction: column; }
.sorbee-check-row b { color: var(--navy); font-size: 0.7rem; }
.sorbee-check-row small { margin-top: 3px; color: var(--slate-500); font-size: 0.56rem; }
.sorbee-check-row em { color: var(--blue); font-size: 0.57rem; font-style: normal; font-weight: 700; }
.sorbee-check-row.is-complete em { color: #176649; }
.sorbee-controls { padding: 96px 0; border-top: 1px solid var(--border-subtle); background: var(--surface-secondary); }
.sorbee-controls-grid { display: grid; grid-template-columns: minmax(390px, 0.8fr) minmax(580px, 1.2fr); gap: 90px; }
.sorbee-controls-grid > div:last-child { border-top: 1px solid var(--border-subtle); }
.sorbee-controls article { display: grid; grid-template-columns: 34px 1fr; gap: 14px; padding: 20px 0; border-bottom: 1px solid var(--border-subtle); }
.sorbee-controls article > i { color: var(--blue); font-size: 1.1rem; }
.sorbee-controls article span { display: flex; flex-direction: column; }
.sorbee-controls strong { color: var(--navy); font-size: 0.84rem; }
.sorbee-controls small { margin-top: 5px; color: var(--slate-600); font-size: 0.7rem; line-height: 1.5; }

@media (max-width: 1199.98px) {
  .pd2-hero-grid, .eva-hero .pd2-hero-grid { grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr); gap: 36px; }
  .pd2-split, .pd2-feature-grid, .pd2-controls-grid, .cp-ecosystem-grid, .eva-context-grid, .eva-workbench-grid, .cat-path-head, .cat-guardrails-grid, .sorbee-fragment-grid, .sorbee-lane-head, .sorbee-conditional-grid, .sorbee-controls-grid { grid-template-columns: 1fr; gap: 48px; }
  .pd2-feature-grid--reverse .pd2-feature-copy { order: 1; }
  .pd2-feature-grid--reverse .pd2-feature-visual { order: 2; }
  .eva-workbench-intro { position: static; }
  .cat-path-list > article { grid-template-columns: 78px minmax(280px, 0.8fr) minmax(400px, 1.2fr); gap: 28px; }
  .sorbee-lane-label, .sorbee-lane-row { grid-template-columns: 128px repeat(4, 1fr); }
}
@media (max-width: 991.98px) {
  .pd2-hero-grid, .eva-hero .pd2-hero-grid, .eva-context-grid, .eva-workbench-grid, .cat-path-head, .cat-guardrails-grid, .sorbee-fragment-grid, .sorbee-lane-head, .sorbee-conditional-grid, .sorbee-controls-grid { grid-template-columns: 1fr; gap: 48px; }
  .eva-workbench-intro { position: static; }
  .eva-decision-flow { grid-template-columns: 1fr; }
  .eva-decision-flow > i { padding: 5px; transform: rotate(90deg); }
  .eva-decision-flow article { min-height: 0; border-bottom: 1px solid var(--border-subtle); }
  .eva-cherry-link { grid-template-columns: 1fr; gap: 10px; }
  .cat-path-list > article { grid-template-columns: 70px 1fr; }
  .cat-path-ui { grid-column: 2; }
  .sorbee-swimlane { border-top: 0; border-left: 0; background: transparent; }
  .sorbee-lane-label { display: none; }
  .sorbee-lane-row { grid-template-columns: 1fr 1fr; margin-top: 18px; border-top: 1px solid var(--border-subtle); border-left: 1px solid var(--border-subtle); }
  .sorbee-lane-row > span { grid-column: 1 / -1; min-height: 0; }
  .sorbee-lane-row > article, .sorbee-lane-row > div { min-height: 120px; }
}
@media (max-width: 767.98px) {
  .eva-context, .eva-workbench, .eva-decision, .cat-choice-gap, .cat-path, .cat-guardrails, .sorbee-fragment, .sorbee-lane, .sorbee-conditional, .sorbee-controls { padding: 70px 0; }
  .eva-context h2, .eva-workbench h2, .eva-decision h2, .cat-choice-gap h2, .cat-path h2, .cat-guardrails h2, .sorbee-fragment h2, .sorbee-lane h2, .sorbee-conditional h2, .sorbee-controls h2 { font-size: 2.35rem; }
  .eva-desk-head, .eva-desk-foot { align-items: flex-start; flex-direction: column; }
  .eva-desk-stage { height: 340px; }
  .eva-risk-item { grid-template-columns: 24px 1fr; }
  .eva-risk-item em { grid-column: 2; justify-self: start; }
  .eva-review-stack > article > div { padding: 20px; }
  .eva-review-stack figure { padding: 0 10px 14px; }
  .cat-choice-contrast { grid-template-columns: 1fr; }
  .cat-choice-contrast > i { min-height: 40px; border: 0; transform: rotate(90deg); }
  .cat-choice-contrast > div:first-child { border-right: 1px solid var(--border-subtle); }
  .cat-path-list > article { grid-template-columns: 44px 1fr; gap: 18px; padding: 30px 0; }
  .cat-path-index { padding-right: 12px; }
  .cat-path-ui { grid-column: 1 / -1; }
  .cat-path-ui--choice { grid-template-columns: 62px 1fr; }
  .cat-path-ui--choice > span { width: 62px; height: 62px; }
  .cat-path-ui--choice > em { grid-column: 2; justify-self: start; }
  .cat-rule-list article { grid-template-columns: 30px 1fr; }
  .cat-rule-list em { grid-column: 2; }
  .sorbee-record-shift { grid-template-columns: 1fr; }
  .sorbee-record-shift > i { transform: rotate(90deg); }
  .sorbee-lane-row { grid-template-columns: 1fr; }
  .sorbee-lane-row > span { grid-column: 1; }
  .sorbee-lane-row > article, .sorbee-lane-row > div { min-height: 96px; }
  .sorbee-lane-empty.is-blank { display: none; }
  .sorbee-checklist-head { align-items: flex-start; flex-direction: column; }
  .sorbee-check-row { grid-template-columns: 28px 1fr; }
  .sorbee-check-row em { grid-column: 2; }
}
@media (prefers-reduced-motion: reduce) {
  .eva-desk-tabs button, .eva-desk-view { transition: none; }
}
