/* Platform Overview — isolated Frozion presentation, upright cards. */
:root { --ov-nav-height:66px; }
.ov-hero { padding:32px 0 0; background:radial-gradient(ellipse at 88% 20%,#f2f1ff 0,#f8fafa 32%,#ffffff 68%); }.ov-breadcrumb { display:flex; flov-wrap:wrap; gap:8px 16px; font-size:12px; margin-bottom:56px; color:#626a70; }.ov-breadcrumb a { color:inherit; }
.ov-hero h1 { font-size:clamp(3rem,4.15vw,3.5rem); margin:24px 0 24px; }.ov-hero .eyebrow { font-size:12px; letter-spacing:.75px; }.ov-hero-lead { font-size:20px; line-height:1.65; max-width:610px; color:#424a50; }.ov-hero-support { font-size:14px; line-height:1.85; max-width:600px; }
.ov-foundation { margin-top:64px; border-top:1px solid var(--line); padding:24px 0 32px; display:flex; justify-content:space-between; flov-wrap:wrap; gap:16px 24px; font-size:12px; }.ov-foundation > span { color:#626a70; }.ov-foundation strong { font-weight:500; }
.ov-label { display:block; font-size:12px; font-weight:600; letter-spacing:1px; text-transform:uppercase; color:#626a70; }
.ov-cover { background:white; border:1px solid #e1ddff; border-radius:15px; box-shadow:0 22px 65px #2f1d990d; overflow:hidden; margin:0; }.ov-cover figcaption { padding:16px 16px; display:flex; justify-content:space-between; gap:16px; font-size:12px; letter-spacing:.6px; color:#626a70; border-bottom:1px solid var(--line); background:#f8fafa; }.ov-cover figcaption span:last-child { letter-spacing:0; }.ov-cover-body { padding:24px; }
.ov-nav { position:sticky; top:var(--header-height); z-index:1020; background:white; border-block:1px solid var(--line); box-shadow:0 5px 12px #120a3d04; }.ov-nav-links { display:grid; grid-template-columns:repeat(5,1fr); }.ov-nav-links a { display:flex; align-items:center; gap:8px; min-height:66px; padding:16px 16px; font-size:12px; color:#626a70; border-bottom:3px solid transparent; }.ov-nav-links a span { font-size:12px; color:#626a70; }.ov-nav-links a.active { color:var(--brand); border-color:var(--brand); background:linear-gradient(0deg,#f2f1ff,transparent); }.ov-nav-links a:hover { color:var(--brand); background:#f8fafa; }.ov-nav-mobile { display:none; padding:16px 0; }
.ov-section { padding:96px 0; scroll-margin-top:calc(var(--header-height) + var(--ov-nav-height) + 22px); }.ov-section h2 { font-size:clamp(2rem,3.35vw,3rem); }.ov-section h3 { font-size:20px; }.ov-section p { font-size:14px; line-height:1.85; }.ov-section .lead-copy { font-size:20px; line-height:1.65; }.ov-wash { background:#f8fafa; }.ov-heading { margin-bottom:48px; }.ov-note { font-size:12px !important; line-height:1.75 !important; color:#626a70; margin-top:16px; }.ov-subsection { margin-top:64px; padding-top:48px; border-top:1px solid var(--line); }
.ov-badge { display:inline-flex; font-size:12px; font-weight:500; background:#eef1f2; color:#007260; border:1px solid #e6fffa; border-radius:5px; padding:4px 8px; line-height:1.5; white-space:nowrap; }.ov-badge.is-warning { background:#fff9e6; border-color:#fff0bf; color:#664200; }.ov-badge.is-denied { background:#ffecee; border-color:#ffd2d7; color:#701024; }.ov-badge.is-neutral { background:#f2f1ff; border-color:#e1ddff; color:#626a70; }
.ov-related { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); border-radius:12px; margin-top:40px; overflow:hidden; background:white; }.ov-related a { padding:24px; border-right:1px solid var(--line); color:var(--body); }.ov-related a:last-child { border:0; }.ov-related a:hover { background:#f2f1ff; }.ov-related strong { display:block; font-size:16px; margin-bottom:16px; }.ov-related span { font-size:12px; line-height:1.7; display:block; }.ov-related b { display:block; margin-top:16px; font-size:12px; font-weight:500; color:var(--brand); }.ov-download { margin-top:24px; font-size:12px !important; }
.ov-hero h1 { font-size:clamp(2.5rem,4.1vw,3.5rem); }.ov-stack > div { display:flex; gap:24px; border:1px solid #e1ddff; border-radius:10px; padding:24px; background:#f8fafa; }.ov-stack > div:nth-of-type(2) { background:#f2f1ff; border-color:#e1ddff; }.ov-stack-number { font-size:12px; color:#4128cc; padding-top:2px; }.ov-stack .ov-label { font-size:12px; }.ov-stack strong { display:block; color:#4128cc; font-size:24px; font-weight:500; margin:16px 0; letter-spacing:-.5px; }.ov-stack p { margin:0; font-size:12px; line-height:1.8; color:#626a70; }.ov-stack-join { display:block; text-align:center; color:#4128cc; font-size:16px; height:29px; line-height:29px; }.ov-shared { display:flex; justify-content:space-between; gap:16px; padding-top:24px; margin-top:24px; border-top:1px solid var(--line); font-size:12px; color:#4128cc; }.ov-cover-footer { padding:16px 24px; border-top:1px solid var(--line); background:#f8fafa; color:#4128cc; font-size:12px; }
.ov-modules { display:grid; gap:24px; }.ov-module { display:grid; grid-template-columns:.7fr 1.3fr; border:1px solid var(--line); border-radius:12px; overflow:hidden; }.ov-module-intro { padding:32px 32px; background:#f2f1ff; border-right:1px solid var(--line); }.ov-module-intro h3 { font-size:32px; margin:24px 0 16px; }.ov-module-intro p { font-size:16px; line-height:1.7; margin-bottom:24px; }.ov-module-intro .btn { font-size:12px; padding:16px 16px; }.ov-module-body { padding:32px; }.ov-module-body > p { font-size:14px; margin-bottom:24px; }.ov-experiences { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; border-top:1px solid var(--line); padding-top:24px; margin-bottom:24px; }.ov-experiences strong { display:block; font-size:14px; font-weight:500; color:#4128cc; margin-bottom:16px; }.ov-experiences span { display:block; font-size:12px; line-height:1.8; }.ov-capability-links { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); border-radius:8px; overflow:hidden; }.ov-capability-links a { padding:16px; border-bottom:1px solid var(--line); color:var(--body); }.ov-capability-links a:nth-child(odd) { border-right:1px solid var(--line); }.ov-capability-links a:nth-last-child(-n+2) { border-bottom:0; }.ov-capability-links a:hover { background:#f2f1ff; }.ov-capability-links strong { display:block; font-size:12px; font-weight:500; color:#4128cc; margin-bottom:8px; }.ov-capability-links span { display:block; font-size:12px; line-height:1.65; }.ov-common-boundary { display:flex; align-items:flex-start; gap:40px; margin-top:32px; padding:24px 32px; background:#f2f1ff; border:1px solid var(--line); border-radius:9px; }.ov-common-boundary > span { flex:0 0 145px; padding-top:4px; }.ov-common-boundary p { margin:0; font-size:14px; }.ov-common-boundary strong { font-weight:500; color:#4128cc; }
.ov-walkthrough { border:1px solid #e1ddff; border-radius:14px; background:white; overflow:hidden; box-shadow:0 15px 50px #2f1d9908; }.ov-walk-head { padding:24px 32px; background:#f2f1ff; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; gap:24px; align-items:center; }.ov-walk-head h3 { margin:8px 0 0; font-size:24px; }.ov-scenario { display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:center; padding:24px 32px; border-bottom:1px solid var(--line); }.ov-scenario label { display:block; font-size:12px; color:#626a70; margin-bottom:8px; }.ov-scenario .form-select { font-size:12px; padding-block:16px; border-color:#e1ddff; }.ov-scenario p { font-size:12px; margin:0; padding-top:24px; }.ov-walk-layout { display:grid; grid-template-columns:300px 1fr; }.ov-step-list { padding:24px 16px; background:#f8fafa; border-right:1px solid var(--line); display:flex; flex-direction:column; gap:8px; }.ov-step { display:flex; gap:16px; text-align:left; border:1px solid transparent; background:transparent; border-radius:8px; padding:24px 16px; color:#626a70; }.ov-step > span:first-child { font-size:12px; color:#4128cc; padding-top:3px; }.ov-step strong { display:block; font-size:14px; font-weight:500; color:#4128cc; }.ov-step small { display:block; font-size:12px; line-height:1.8; margin-top:8px; }.ov-step:hover { background:#f2f1ff; }.ov-step.active { border-color:#e1ddff; background:#f2f1ff; box-shadow:inset 3px 0 #9a8eff; }.ov-step:focus-visible { outline:2px solid var(--brand); outline-offset:2px; }.ov-walk-panel { padding:32px 32px; scroll-margin-top:calc(var(--header-height) + var(--ov-nav-height) + 20px); min-width:0; }.ov-panel-top { display:flex; align-items:center; justify-content:space-between; gap:16px; }.ov-walk-panel h4 { font-size:32px; line-height:1.25; margin:24px 0 16px; }.ov-walk-panel > p { font-size:14px; }.ov-module-roles { border:1px solid var(--line); border-radius:9px; margin:24px 0 24px; overflow:hidden; }.ov-module-roles > div { display:grid; grid-template-columns:118px 1fr; gap:16px; padding:16px 16px; border-bottom:1px solid var(--line); }.ov-module-roles > div:last-child { border:0; }.ov-module-roles span { font-size:12px; color:#4128cc; padding-top:2px; }.ov-module-roles p { font-size:12px; margin:0; line-height:1.85; }.ov-case-evidence { padding:16px; background:#f8fafa; border:1px solid var(--line); border-radius:7px; }.ov-case-evidence p { font-size:12px; line-height:1.9; margin:8px 0 0; overflow-wrap:anywhere; }.ov-case-next { margin-top:24px; }.ov-case-next strong { font-size:12px; color:#4128cc; font-weight:500; }.ov-case-next p { margin:8px 0 0; font-size:12px; }.ov-walk-links { margin-top:24px; }.ov-walk-links a { font-size:12px; }.ov-walk-links a[hidden] { display:none; }.ov-walk-footer { display:flex; justify-content:space-between; gap:24px; align-items:center; padding:16px 32px; border-top:1px solid var(--line); background:#f8fafa; }.ov-walk-footer > span { font-size:12px; line-height:1.8; color:#626a70; max-width:650px; }.ov-walk-footer > div { display:flex; gap:24px; align-items:center; white-space:nowrap; }.ov-walk-footer > div > span { font-size:12px; color:#4128cc; }.ov-walk-control { background:none; border:0; padding:0; color:var(--brand); font-size:12px; }.ov-walk-control:disabled { color:#bdc3c6; cursor:default; }.ov-walk-note { display:grid; grid-template-columns:.7fr 1.3fr; gap:48px; margin-top:32px; }.ov-walk-note strong { font-size:14px; font-weight:500; }.ov-walk-note p { margin:0; font-size:12px; }
.ov-lifecycle { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); border-radius:12px; overflow:hidden; }.ov-lifecycle article { padding:32px; border-right:1px solid var(--line); }.ov-lifecycle article:last-child { border:0; }.ov-lifecycle h3 { font-size:24px; margin:16px 0; }.ov-lifecycle p { font-size:12px; }.ov-lifecycle b { display:block; font-size:12px; font-weight:500; color:#4128cc; line-height:1.8; margin-top:24px; }.ov-maintenance { display:grid; grid-template-columns:1fr 1fr; gap:64px; margin-top:56px; }.ov-maintenance h3 { font-size:24px; margin:16px 0; }.ov-maintenance p { font-size:14px; }.ov-maintenance dl { margin:0; }.ov-maintenance dl > div { display:grid; grid-template-columns:135px 1fr; gap:24px; padding:16px 0; border-bottom:1px solid var(--line); }.ov-maintenance dl > div:first-child { padding-top:0; }.ov-maintenance dt { font-size:12px; font-weight:500; color:#4128cc; }.ov-maintenance dd { margin:0; font-size:12px; line-height:1.8; }.ov-principles { margin-top:48px; border:1px solid var(--line); border-radius:12px; overflow:hidden; }.ov-principles-heading { background:#f2f1ff; padding:32px 32px; display:grid; grid-template-columns:1fr 1fr; column-gap:32px; }.ov-principles-heading > span { grid-column:1/-1; }.ov-principles-heading h3 { margin:16px 0 0; font-size:24px; }.ov-principles-heading p { margin:24px 0 0; font-size:14px; }.ov-principle-grid { display:grid; grid-template-columns:repeat(3,1fr); }.ov-principle-grid article { display:flex; gap:16px; padding:32px; border-top:1px solid var(--line); border-right:1px solid var(--line); }.ov-principle-grid article:nth-child(3n) { border-right:0; }.ov-principle-grid article > span { font-size:24px; font-weight:500; color:#4128cc; line-height:1.2; min-width:20px; }.ov-principle-grid h4 { color:#4128cc; font-size:20px; margin:0 0 16px; }.ov-principle-grid p { font-size:12px; line-height:1.85; margin:0; }
.ov-stack-map { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); border-radius:12px; overflow:hidden; background:white; }.ov-stack-map > div { padding:32px; border-right:1px solid var(--line); }.ov-stack-map > div:last-child { border:0; }.ov-stack-map h3 { font-size:20px; margin-bottom:16px; }.ov-stack-map p { font-size:12px; margin:0; }.ov-foundation-links { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:24px; }.ov-foundation-links a { padding:16px 3px; border-bottom:1px solid #e1ddff; }.ov-foundation-links strong { display:block; font-size:14px; font-weight:500; color:#4128cc; margin-bottom:16px; }.ov-foundation-links span { display:block; font-size:12px; line-height:1.8; color:#4128cc; }.ov-adoption-heading { margin-top:64px; max-width:800px; }.ov-adoption-heading h3 { font-size:32px; margin:16px 0; }.ov-adoption-heading p { font-size:16px; }.ov-adoption { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:32px; }.ov-adoption > a { display:block; padding:32px; border:1px solid var(--line); background:white; border-radius:11px; color:var(--body); }.ov-adoption > a:hover { background:#ffffff; border-color:#beb6ff; }.ov-adoption h4 { font-size:24px; line-height:1.3; color:#4128cc; margin:24px 0 16px; max-width:400px; }.ov-adoption p { font-size:14px; margin-bottom:24px; }.ov-adoption b { font-size:12px; font-weight:500; color:var(--brand); }.ov-start-small { display:grid; grid-template-columns:.7fr 1.3fr; gap:16px 48px; margin-top:40px; padding-top:32px; border-top:1px solid var(--line); }.ov-start-small strong { font-size:16px; font-weight:500; }.ov-start-small p { font-size:14px; margin:0; }.ov-start-small a { grid-column:2; font-size:12px; }.closing-cta { padding:88px 0; background:radial-gradient(ellipse at 50% 100%,#e1ddff,#f8fafa 65%); border-top:1px solid var(--line); }.closing-cta p { max-width:670px; margin:0 auto 24px; }.closing-cta .ov-download { margin-bottom:0; }
@media(max-width:991px){.ov-hero { padding-top:24px; }.ov-breadcrumb { margin-bottom:32px; }.ov-foundation { margin-top:40px; }.ov-nav-links { display:none; }.ov-nav-mobile { display:flex; align-items:center; gap:16px; }.ov-nav-mobile label { font-size:12px; flex-shrink:0; }.ov-nav-mobile .form-select { font-size:12px; }.ov-section { padding:64px 0; }.ov-module { grid-template-columns:1fr; }.ov-module-intro { border-right:0; border-bottom:1px solid var(--line); }.ov-module-intro h3 { margin-top:16px; }.ov-module-intro p { margin-bottom:24px; }.ov-walk-layout { grid-template-columns:245px 1fr; }.ov-step-list { padding:16px 16px; }.ov-step { padding:16px 16px; gap:16px; }.ov-step strong { font-size:12px; }.ov-step small { font-size:12px; }.ov-walk-panel { padding:32px 24px; }.ov-module-roles > div { grid-template-columns:1fr; gap:8px; }.ov-walk-head { flex-direction:column; align-items:flex-start; gap:16px; }.ov-walk-footer { flex-direction:column; align-items:flex-start; gap:16px; }.ov-walk-footer > div { width:100%; justify-content:space-between; }.ov-lifecycle article { padding:24px; }.ov-lifecycle h3 { font-size:20px; }.ov-maintenance { gap:32px; }.ov-maintenance dl > div { grid-template-columns:1fr; gap:8px; }.ov-principle-grid article { padding:24px; gap:16px; }.ov-stack-map { grid-template-columns:1fr 1fr; }.ov-stack-map > div { border-bottom:1px solid var(--line); }.ov-stack-map > div:nth-child(2n) { border-right:0; }.ov-stack-map > div:nth-last-child(2) { border-bottom:0; }.ov-foundation-links { grid-template-columns:1fr 1fr; }.navbar-collapse.show { max-height:calc(100svh - 90px); overflow-y:auto; }}
@media(max-width:575px){.ov-hero h1 { font-size:2.5rem; }.ov-hero-lead { font-size:16px; }.ov-hero-support { font-size:14px; }.ov-breadcrumb { font-size:12px; }.ov-foundation { display:grid; grid-template-columns:1fr 1fr; font-size:12px; gap:16px; }.ov-foundation > span { grid-column:1/-1; }.ov-cover figcaption { font-size:12px; padding:16px; line-height:1.7; }.ov-cover figcaption > span:first-child { max-width:205px; }.ov-cover-body { padding:24px 16px; }.ov-stack > div { padding:24px 16px; gap:16px; }.ov-stack strong { font-size:24px; }.ov-stack p { font-size:12px; }.ov-stack .ov-label { font-size:12px; }.ov-shared { display:grid; gap:8px; font-size:12px; padding-top:16px; margin-top:24px; }.ov-shared span::before { content:'✓'; color:#4128cc; margin-right:8px; }.ov-cover-footer { padding:16px 16px; font-size:12px; line-height:1.8; }.ov-section h2 { font-size:2rem; }.ov-section .lead-copy { font-size:16px; }.ov-heading { margin-bottom:32px; }.ov-module-intro { padding:32px 24px; }.ov-module-intro h3 { font-size:32px; }.ov-module-intro p { font-size:16px; }.ov-module-body { padding:24px 24px; }.ov-experiences { grid-template-columns:1fr; gap:24px; }.ov-experiences strong { font-size:16px; margin-bottom:8px; }.ov-capability-links { grid-template-columns:1fr; }.ov-capability-links a { padding:16px 16px; }.ov-capability-links a:nth-child(odd) { border-right:0; }.ov-capability-links a:nth-last-child(2) { border-bottom:1px solid var(--line); }.ov-capability-links strong { font-size:14px; }.ov-common-boundary { flex-direction:column; gap:16px; padding:24px 24px; }.ov-common-boundary > span { flex-basis:auto; padding:0; }.ov-common-boundary p { font-size:12px; }.ov-walk-head { padding:24px 16px; }.ov-walk-head h3 { font-size:20px; }.ov-scenario { grid-template-columns:1fr; padding:24px 16px; gap:16px; }.ov-scenario .form-select { font-size:12px; width:100%; }.ov-scenario p { padding:0; font-size:12px; }.ov-walk-layout { grid-template-columns:1fr; }.ov-step-list { border-right:0; border-bottom:1px solid var(--line); padding:16px 16px; gap:6px; }.ov-step { padding:16px 16px; align-items:center; }.ov-step strong { font-size:12px; }.ov-step small { font-size:12px; margin-top:4px; }.ov-step > span:first-child { padding:0; }.ov-walk-panel { padding:24px 16px; }.ov-panel-top { gap:16px; }.ov-panel-top .ov-label { font-size:12px; }.ov-panel-top .ov-badge { font-size:12px; white-space:normal; }.ov-walk-panel h4 { font-size:24px; }.ov-walk-panel > p { font-size:12px; }.ov-module-roles > div { padding:16px 16px; }.ov-case-evidence { padding:16px 16px; }.ov-case-evidence .ov-label { font-size:12px; }.ov-walk-footer { padding:16px; }.ov-walk-footer > span { font-size:12px; }.ov-walk-note { grid-template-columns:1fr; gap:16px; }.ov-lifecycle { grid-template-columns:1fr; }.ov-lifecycle article { padding:32px 24px; border-right:0; border-bottom:1px solid var(--line); }.ov-lifecycle h3 { font-size:24px; }.ov-maintenance { grid-template-columns:1fr; gap:24px; margin-top:40px; }.ov-maintenance h3 { font-size:24px; }.ov-maintenance dl > div { gap:8px; }.ov-principles-heading { grid-template-columns:1fr; padding:24px 24px; }.ov-principles-heading h3 { font-size:24px; }.ov-principles-heading p { margin-top:16px; font-size:12px; }.ov-principle-grid { grid-template-columns:1fr; }.ov-principle-grid article { border-right:0; padding:24px 24px; gap:24px; }.ov-principle-grid h4 { font-size:20px; }.ov-stack-map { grid-template-columns:1fr; }.ov-stack-map > div { padding:24px 24px; border-right:0; }.ov-stack-map > div:nth-last-child(2) { border-bottom:1px solid var(--line); }.ov-stack-map h3 { font-size:24px; }.ov-foundation-links { grid-template-columns:1fr; gap:6px; }.ov-foundation-links a { padding:16px 3px; }.ov-foundation-links strong { font-size:16px; margin-bottom:8px; }.ov-adoption-heading { margin-top:48px; }.ov-adoption-heading h3 { font-size:32px; }.ov-adoption-heading p { font-size:14px; }.ov-adoption { grid-template-columns:1fr; gap:16px; }.ov-adoption > a { padding:32px 24px; }.ov-adoption h4 { font-size:24px; }.ov-adoption p { font-size:12px; }.ov-start-small { grid-template-columns:1fr; gap:16px; }.ov-start-small a { grid-column:auto; }.closing-cta { padding:64px 0; }}
@media(prefers-reduced-motion:reduce){html { scroll-behavior:auto; }}

/* Approved Overview revision: three-module map and cumulative case evidence. */
.ov-breadcrumb,.ov-foundation { flex-wrap:wrap; }
.ov-hero .ov-hero-lead { font-size:19px; line-height:1.65; }
.ov-cover .ov-cover-body > .ov-fabric-base { margin:24px 0 0; padding:16px; text-align:center; background:#f2f1ffcc; border:1px solid #d5cdf6; border-radius:8px; }
.ov-problem { padding:72px 0; border-top:1px solid var(--line); background:#f8fafa; }
.ov-problem h2 { font-size:clamp(2rem,3vw,2.6rem); }
.ov-problem .lead-copy { font-size:20px; line-height:1.6; }
.ov-problem p { line-height:1.8; }
.ov-handoffs,.ov-module-map,.ov-payoffs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ov-handoffs { margin:32px 0; }
.ov-handoffs article { border-top:2px solid #b9adff; padding-top:24px; }
.ov-handoffs h3 { margin:16px 0 12px; font-size:23px; }
.ov-handoffs p,.ov-problem-close { font-size:14px; }
.ov-problem-close { margin:0; }
.ov-problem-close a { margin-left:8px; }
.ov-map-card,.ov-payoffs article { min-width:0; padding:28px; border:1px solid var(--line); border-radius:12px; background:white; display:flex; flex-direction:column; }
.ov-map-card { border-top:3px solid #aa97ff; }
.ov-map-data { border-top-color:#5ba89b; }
.ov-map-app { border-top-color:#83a2d9; }
.ov-module-tag { display:inline-block; align-self:flex-start; font-size:11px; line-height:1.5; font-weight:500; padding:5px 8px; border-radius:5px; color:#4128cc; background:#f2f1ff; }
.ov-map-data .ov-module-tag,[data-module="data"] .ov-module-tag { color:#176558; background:#e8f6f2; }
.ov-map-app .ov-module-tag,[data-module="app"] .ov-module-tag { color:#325788; background:#edf3ff; }
.ov-map-card h3 { font-size:29px; margin:24px 0 16px; }
.ov-map-card .ov-map-question { font-size:18px; line-height:1.5; color:var(--ink); min-height:81px; font-weight:500; }
.ov-map-card > p:not(.ov-map-question) { margin-bottom:24px; }
.ov-link-list { list-style:none; margin:0; padding:0; }
.ov-link-list li { border-top:1px solid var(--line); }
.ov-link-list a { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:13px 0; font-size:13px; line-height:1.6; color:var(--brand-dark); }
.ov-link-list a:hover { text-decoration:underline; text-underline-offset:3px; }
.ov-link-list a > span { flex-shrink:0; }
.ov-module-cta { padding-top:28px; margin-top:auto; font-size:13px; }
.ov-fabric-band { margin-top:24px; padding:32px; display:grid; grid-template-columns:1.4fr 1fr; gap:32px; align-items:center; border:1px solid #d5cdf6; border-radius:12px; background:#f9f7ff; }
.ov-fabric-band h3 { font-size:27px; margin:12px 0; }
.ov-fabric-band p { margin:0; }
.ov-fabric-chips { list-style:none; display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; }
.ov-fabric-chips li { background:#fff; border:1px solid #d5cdf6; border-radius:5px; padding:8px 12px; font-size:12px; color:#4128cc; }
.ov-module-roles > div { grid-template-columns:145px 1fr; align-items:center; }
.ov-module-roles .ov-module-tag { justify-self:start; padding:5px 8px; }
.ov-evidence-strip { padding:24px 32px; border-top:1px solid var(--line); background:#f6f4ff; }
.ov-evidence-strip ol { list-style:none; display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:16px 0; }
.ov-evidence-strip li { padding:8px 12px; font-size:12px; border:1px solid #d5cdf6; background:white; color:#4128cc; border-radius:6px; }
.ov-evidence-strip li.is-held { color:#664200; border-color:#e6ce96; background:#fff9e6; }
.ov-evidence-strip p { margin:0; font-size:12px; overflow-wrap:anywhere; }
.ov-module-deep-links { display:flex; flex-wrap:wrap; gap:16px 32px; margin-top:24px; font-size:13px; }
.ov-payoffs h3 { font-size:26px; line-height:1.25; margin:20px 0 16px; }
.ov-payoffs .ov-link-list { margin-top:auto; padding-top:16px; }
.ov-principles-linked .ov-principles-heading { grid-template-columns:1fr 1.3fr 1fr; }
.ov-principles-linked .ov-principle-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ov-principles-linked .ov-principle-grid article { padding:24px; gap:16px; }
.ov-principles-linked .ov-principle-grid article > span { font-size:32px; min-width:28px; }
.ov-principles-linked h4 { font-size:21px; }
.ov-principles-linked h4 a { color:var(--brand-dark); text-decoration:underline; text-decoration-color:#c4b8ff; text-underline-offset:4px; }
.ov-foundation-links { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ov-adoption-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ov-adoption-three > a { padding:28px; }
.ov-adoption-three h4 { font-size:26px; }
.ov-scope { padding:28px 32px; border:1px solid #d5cdf6; background:#f8f7ff; border-radius:12px; margin-bottom:40px; }
.ov-scope-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px 32px; margin-top:24px; }
.ov-scope-grid p { margin:0; }
.ov-scope-grid strong { display:block; color:var(--ink); font-weight:500; margin-bottom:6px; }
@media(max-width:991px) {
 .ov-module-map,.ov-payoffs { grid-template-columns:1fr; }
 .ov-map-card .ov-map-question { min-height:0; }
 .ov-map-card { display:block; }
 .ov-module-cta { display:inline-flex; margin-top:0; }
 .ov-handoffs { gap:20px; }
 .ov-fabric-band { grid-template-columns:1fr; gap:24px; }
 .ov-principles-linked .ov-principles-heading { grid-template-columns:1fr; }
 .ov-principles-linked .ov-principle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ov-adoption-three { grid-template-columns:1fr; }
}
@media(max-width:575px) {
 .ov-problem { padding:48px 0; }
 .ov-handoffs,.ov-scope-grid,.ov-foundation-links { grid-template-columns:1fr; }
 .ov-map-card,.ov-payoffs article,.ov-fabric-band,.ov-scope { padding:24px; }
 .ov-module-roles > div { grid-template-columns:1fr; gap:8px; }
 .ov-evidence-strip { padding:24px 16px; }
 .ov-principles-linked .ov-principle-grid article { display:block; padding:20px 14px; }
 .ov-principles-linked .ov-principle-grid article > span { display:block; margin-bottom:14px; }
 .ov-principles-linked .ov-principle-grid h4 { font-size:18px; }
 .ov-principles-linked .ov-principle-grid p { font-size:12px; }
 .ov-shared { gap:12px; flex-wrap:wrap; }
 .ov-problem-close a { margin-left:0; display:inline-block; margin-top:8px; }
}
