:root { --ink:#1d2530; --navy:#1d2530; --blue:#217c7c; --sky:#dfeeea; --mist:#f5ecdc; --line:#ded6c7; --green:#0f6a61; --warm:#f6bc38; --white:#fffaf1; --max:1160px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--white); font:16px/1.55 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { color:inherit; } a:focus-visible { outline:3px solid #0b4d4a; outline-offset:4px; border-radius:3px; }
.skip-link { position:absolute; left:-999px; top:auto; }
.skip-link:focus { left:1rem; top:1rem; padding:.7rem 1rem; background:#fff; z-index:10; border:2px solid var(--blue); }
.site-header { height:78px; padding:0 max(2rem, calc((100vw - var(--max))/2)); display:flex; align-items:center; justify-content:space-between; gap:2rem; border-bottom:1px solid var(--line); background:rgba(255,255,255,.95); }
.brand { display:flex; align-items:center; gap:.7rem; text-decoration:none; line-height:1.08; }
.brand-mark { width:35px; height:35px; border-radius:50%; display:grid; place-items:center; color:var(--ink); background:var(--warm); font-weight:800; }
.brand strong, .brand small { display:block; } .brand small { color:#637083; font-size:.76rem; margin-top:.2rem; }
nav { display:flex; gap:1.25rem; } nav a { text-decoration:none; color:#42516a; font-size:.9rem; } nav a:hover { color:var(--blue); }
.hero { max-width:var(--max); margin:auto; min-height:585px; padding:7rem 0 5.5rem; display:grid; grid-template-columns:1.1fr .9fr; gap:4.5rem; align-items:center; }
.eyebrow { color:var(--blue); font-size:.78rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; margin:0 0 .8rem; }
h1,h2,h3,p { margin-top:0; } h1 { max-width:700px; font-size:clamp(2.7rem,5vw,4.8rem); line-height:1.04; letter-spacing:-.055em; margin-bottom:1.45rem; }
h2 { font-size:clamp(2rem,3.4vw,3.25rem); line-height:1.08; letter-spacing:-.04em; margin-bottom:1.2rem; } h3 { font-size:1.05rem; margin-bottom:.35rem; }
.lede { max-width:650px; color:#536176; font-size:1.15rem; line-height:1.6; }
.case-actions { margin-top:2rem; display:flex; align-items:center; gap:1.25rem; }.button { display:inline-flex; align-items:center; gap:.65rem; padding:.82rem 1.12rem; color:#fff; background:var(--navy); text-decoration:none; border-radius:.35rem; font-weight:750; }.text-link { color:var(--blue); font-weight:750; text-decoration:none; }
.hero-graphic { min-height:365px; position:relative; border-radius:1.35rem; background:linear-gradient(145deg,#e9f7ff,#f9fbfe); overflow:hidden; border:1px solid #d8e9f6; }
.flow-card { position:absolute; z-index:1; width:185px; padding:1rem; background:#fff; border:1px solid #d5e0ea; box-shadow:0 12px 26px rgba(31,58,86,.09); border-radius:.75rem; }.flow-card b,.flow-card span { display:block; }.flow-card b { color:var(--navy); }.flow-card span { color:#6d7990; font-size:.8rem; margin-top:.25rem; }.flow-config { top:42px; left:30px; }.flow-send { top:147px; right:25px; }.flow-response { bottom:36px; left:77px; }.flow-line { position:absolute; width:85%; height:1px; top:51%; left:8%; border-top:2px dashed #76a7ce; transform:rotate(-14deg); }.flow-dot { position:absolute; width:16px; height:16px; border:4px solid #fff; background:var(--blue); border-radius:50%; z-index:0; }.dot-one { left:33%; top:35%; }.dot-two { right:29%; top:50%; background:var(--warm); }.dot-three { left:43%; bottom:16%; background:var(--green); }
.case-facts { display:grid; grid-template-columns:repeat(4,1fr); background:var(--navy); color:#fff; padding:2rem max(2rem, calc((100vw - var(--max))/2)); gap:2rem; }.case-facts span,.case-facts strong { display:block; }.case-facts span { color:#a9bfd7; font-size:.76rem; text-transform:uppercase; letter-spacing:.08em; margin-bottom:.35rem; }.case-facts strong { font-size:.94rem; }
.narrative,.feature,.outcomes,.reflection { max-width:var(--max); margin:auto; }.narrative { padding:7rem 0; display:grid; grid-template-columns: .8fr 1.2fr; gap:5rem; }.narrative.soft { max-width:none; padding:6rem max(2rem, calc((100vw - var(--max))/2)); background:var(--mist); }.body-copy { max-width:720px; }.big-copy { color:var(--navy); font-size:1.42rem; line-height:1.42; }.body-copy p:not(.big-copy), .feature-copy p { color:#5c697d; }
.principles { grid-column:1/-1; display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-top:1rem; }.principles div { padding:1.35rem; border-top:3px solid var(--blue); background:#fff; }.principles span { color:#7b8aa0; font-size:.75rem; font-weight:800; }.principles p { margin:0; color:#68758a; font-size:.88rem; }
.feature { padding:7rem 0; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:5.5rem; }.feature.reverse { direction:rtl; }.feature.reverse > * { direction:ltr; }.feature-copy { max-width:525px; }.feature-copy p { margin-bottom:1rem; }
.mockup,.trace-panel { width:100%; border:1px solid #cfd9e5; border-radius:.7rem; box-shadow:0 20px 42px rgba(23,45,69,.12); overflow:hidden; background:#fff; }.window-bar { display:flex; justify-content:space-between; align-items:center; padding:.65rem .8rem; background:#173753; color:#fff; font-size:.82rem; font-weight:700; }.window-bar i { color:#a5bed1; font-size:.62rem; letter-spacing:.08em; }.window-meta { padding:.6rem .8rem; display:flex; justify-content:space-between; color:#607188; font-size:.73rem; border-bottom:1px solid var(--line); }.window-meta b { color:var(--blue); }.table-head,.table-row { display:grid; grid-template-columns:1.1fr 2.3fr .55fr; gap:.75rem; align-items:center; padding:.56rem .8rem; font-size:.72rem; border-bottom:1px solid #edf0f4; }.table-head { color:#6f7c91; background:#f7f9fb; font-weight:800; }.table-row.selected { background:#effcf3; }.table-row b { color:var(--green); text-align:center; }.rule-note { display:flex; gap:.6rem; flex-wrap:wrap; padding:.75rem .8rem; background:#fff8eb; color:#845b1c; font-size:.7rem; }.rule-note span { color:#9a742f; }
.tabs { display:flex; gap:.2rem; padding:.65rem .75rem 0; background:#f6f8fb; }.tabs span,.tabs b { padding:.38rem .55rem; font-size:.7rem; border:1px solid var(--line); background:#fff; }.tabs b { border-bottom:2px solid var(--blue); color:var(--blue); }.tabs .muted { color:#a4adba; }.request-type { margin:.9rem; padding:.7rem; border:1px solid #b8d9f1; background:#eff9ff; }.request-type small,.request-type strong { display:block; }.request-type small { color:#647991; font-size:.65rem; }.request-type strong { font-size:.8rem; color:var(--navy); }.api-grid { display:grid; grid-template-columns:1.8fr .6fr 1fr; gap:1px; padding:.9rem; background:#dfe6ee; }.api-grid > * { min-height:31px; padding:.48rem .5rem; background:#fff; font-size:.67rem; }.api-grid > :nth-child(-n+3) { background:#f2f6f9; color:#6e7b8c; font-weight:800; }.api-grid b { color:var(--green); }.api-grid em { font-style:normal; color:#66758a; }.api-footer { display:flex; justify-content:space-between; padding:.7rem .9rem; color:#65728a; font-size:.68rem; border-top:1px solid var(--line); }.api-footer b { color:var(--green); }
.trace-panel { padding:1.25rem; background:#f9fbfd; }.batch-header { display:flex; justify-content:space-between; padding-bottom:1rem; color:var(--navy); border-bottom:1px solid var(--line); font-size:.82rem; }.batch-header strong { color:var(--blue); }.batch-lanes { display:grid; grid-template-columns:repeat(3,1fr); gap:.6rem; margin:1rem 0; }.batch-lanes div { padding:.75rem; background:#fff; border:1px solid #dce4ed; border-radius:.45rem; }.batch-lanes i { width:9px; height:9px; display:inline-block; border-radius:50%; background:var(--blue); }.batch-lanes span,.batch-lanes small { display:block; }.batch-lanes span { color:var(--navy); font-size:.72rem; font-weight:800; margin:.35rem 0 .2rem; }.batch-lanes small { color:#718096; font-size:.64rem; }.audit-row { display:grid; grid-template-columns:1.3fr .8fr 1.4fr 1fr; gap:.45rem; padding:.75rem; color:#5c6a7e; background:#e8f4fc; font-size:.64rem; }.audit-row b { color:var(--navy); }.error-box { margin-top:1rem; padding:.75rem; background:#fff1f0; border-left:3px solid #cb5f58; }.error-box strong { color:#9c3732; font-size:.72rem; }.error-box p { margin:.25rem 0 0; color:#7e615f; font-size:.67rem; }
.review-status { display:grid; grid-template-columns:.65fr 1.5fr 1.6fr; gap:1px; background:#dfe6ee; }.review-status > * { padding:.6rem .65rem; font-size:.65rem; background:#fff; }.review-status span { color:var(--green); font-weight:800; }.review-status b { color:var(--navy); }.review-status em { color:#6b788b; font-style:normal; }.cds-block { margin:.85rem; padding:.7rem; border:1px solid #cfe2ee; background:#f2fbff; }.cds-block > strong { display:block; margin-bottom:.5rem; color:var(--navy); font-size:.72rem; }.cds-block div { display:flex; justify-content:space-between; color:#607087; font-size:.66rem; padding:.15rem 0; }.cds-block b { color:#253a54; }.benefit-head { padding:.65rem .8rem; display:flex; align-items:center; justify-content:space-between; color:var(--navy); font-size:.7rem; font-weight:800; border-top:1px solid var(--line); }.benefit-head button { appearance:none; padding:.4rem .6rem; color:#fff; background:var(--blue); border:0; border-radius:.25rem; font-size:.65rem; }.benefit-row { display:grid; grid-template-columns:.3fr 1.3fr 1.1fr 1fr; padding:.5rem .75rem; gap:.4rem; border-top:1px solid #edf0f4; font-size:.67rem; }.benefit-row i { width:14px; height:14px; display:grid; place-items:center; border:1px solid #9ba8b7; border-radius:2px; color:#fff; font-size:.55rem; font-style:normal; }.benefit-row.selected i { background:var(--blue); border-color:var(--blue); }.benefit-row.muted { color:#a5afba; background:#f7f8fa; }.benefit-row.muted i { border-color:#d0d6dd; }.benefit-row b { text-align:right; }.apply-note { display:flex; justify-content:space-between; padding:.7rem .8rem; color:#607087; background:#f5f9fc; font-size:.65rem; }.apply-note b { color:var(--green); }
.outcomes { padding:6.5rem 0; display:grid; grid-template-columns:1fr 1.25fr; gap:4rem; }.outcome-grid { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); }.outcome-grid div { padding:1.4rem; background:#fff; }.outcome-grid strong { color:var(--navy); }.outcome-grid p { color:#65728a; font-size:.9rem; margin:.45rem 0 0; }.reflection { padding:6rem 0; border-top:1px solid var(--line); }.reflection p:last-child { max-width:780px; color:#5b687b; font-size:1.1rem; }.contact { padding:5rem max(2rem, calc((100vw - var(--max))/2)); background:var(--navy); color:#fff; }.contact .eyebrow { color:#a7d1fa; }.contact h2 { max-width:600px; }.button.light { color:var(--navy); background:#fff; }footer { display:flex; justify-content:space-between; padding:1.2rem max(2rem, calc((100vw - var(--max))/2)); color:#657287; background:#0b1d35; font-size:.8rem; }footer a { color:#c8e4ff; text-decoration:none; }
@media (max-width:850px) { .site-header { padding:0 1.2rem; } nav { gap:.8rem; } .hero,.feature,.narrative,.outcomes { margin:0 1.5rem; grid-template-columns:1fr; gap:2.5rem; }.hero { padding:4rem 0; min-height:0; }.case-facts { grid-template-columns:1fr 1fr; padding:1.6rem; }.narrative,.feature,.outcomes { padding:4.5rem 0; }.narrative.soft { margin:0; padding:4.5rem 1.5rem; }.feature.reverse { direction:ltr; }.principles { grid-template-columns:1fr 1fr; }.feature-copy { max-width:none; } .outcomes { gap:2rem; } }
@media (max-width:560px) { nav { display:none; } h1 { font-size:2.65rem; }.case-facts { grid-template-columns:1fr; }.principles,.outcome-grid { grid-template-columns:1fr; }.hero-graphic { min-height:315px; }.flow-card { width:160px; }.flow-config { left:18px; }.flow-send { right:13px; }.flow-response { left:40px; }.batch-lanes { grid-template-columns:1fr; }.audit-row { grid-template-columns:1fr 1fr; }.api-grid { grid-template-columns:1.35fr .55fr .9fr; }.site-header { height:70px; } }

/* Warm the eligibility story toward the portfolio's cream, amber, and deep-teal language. */
.site-header { background:rgba(255,253,249,.95); }
.hero-graphic { background:linear-gradient(145deg,#e3f0e9,#fff7e8); border-color:#cddfd6; }
.flow-card { background:#fffdf9; border-color:#d8e2db; box-shadow:0 12px 26px rgba(44,73,69,.09); }
.flow-card span { color:#687773; }.flow-line { border-color:#75a595; }.flow-dot { border-color:#fffdf9; }
.mockup,.trace-panel { border-color:#d5ded7; box-shadow:0 20px 42px rgba(44,73,69,.12); background:#fffdf9; }
.window-bar { background:#315d58; color:#fffdf9; }.window-bar i { color:#c5dbd1; }
.table-head { color:#6b7974; background:#faf8f3; }.table-head,.table-row { border-color:#eee9df; }
.tabs { background:#faf7f0; }.request-type { border-color:#bfd9d1; background:#eef8f3; }.api-grid > :nth-child(-n+3) { background:#f5f7f2; color:#6b7974; }
.contact { color:#fffdf9; }.contact .eyebrow { color:#d9e7b2; }footer { color:#d2dfd8; background:#203b39; }footer a { color:#e1edc4; }

/* Enterprise partnership variant: warm coral distinguishes it from the teal platform foundation. */
.partner-case .hero-graphic{background:linear-gradient(145deg,#fce1d7,#fff8ef);border-color:#ecc4b8}
.partner-case .flow-card{border-color:#ebc5ba;box-shadow:0 12px 26px rgba(115,58,45,.1)}
.partner-case .flow-card b{color:#8d332a}.partner-case .flow-line{border-color:#d78c75}
.partner-case .dot-one{background:#e8896e}.partner-case .dot-two{background:#f6bc38}.partner-case .dot-three{display:none}
.partner-case .case-facts{background:#8d332a}.partner-case .case-facts span{color:#f6d8ce}
.partner-case .contact{background:#8d332a}.partner-case footer{background:#5f241d}
