/* Six content-led diagrams. The SVG contains no essential text. */
.skyviz{--skyviz-ink:#102d45;--skyviz-blue:#17648b;--skyviz-sky:#78c6e8;--skyviz-pale:#e9f4fa;--skyviz-line:#bfd7e4;--skyviz-muted:#35586d;box-sizing:border-box;margin:48px 0;padding:38px;color:var(--skyviz-ink);border:1px solid var(--skyviz-line);background:#f8fbfd;font-size:20px;line-height:1.65;overflow-wrap:anywhere;word-break:keep-all;break-inside:avoid;isolation:isolate}
.skyviz *,.skyviz *::before,.skyviz *::after{box-sizing:border-box}
.skyviz .skyviz-heading{margin:0 0 30px;padding:0 0 24px;border-bottom:1px solid var(--skyviz-line)}
.skyviz .skyviz-title{margin:0!important;font-size:clamp(27px,2.6vw,35px)!important;line-height:1.45!important;font-weight:700;letter-spacing:-.035em;color:var(--skyviz-ink)}
.skyviz h3{margin:12px 0!important;font-size:24px!important;line-height:1.5!important;letter-spacing:-.03em;color:var(--skyviz-ink)}
.skyviz p,.skyviz li,.skyviz dt,.skyviz dd,.skyviz figcaption{font-size:20px!important;line-height:1.65!important}
.skyviz p{margin:0!important}
.skyviz strong{font-size:22px;font-weight:700;line-height:1.5}
.skyviz ul,.skyviz ol{padding:0!important;list-style:none!important;margin:0!important}
.skyviz li{margin:0!important;padding:0!important}
.skyviz .skyviz-caption{margin:28px 0 0;padding-top:24px;border-top:1px solid var(--skyviz-line);color:var(--skyviz-muted);font-size:20px!important}
.skyviz .skyviz-takeaway{margin-top:26px!important;padding:20px 24px;background:var(--skyviz-ink);color:#fff;font-weight:600}
.skyviz .skyviz-context{margin-bottom:28px!important;padding-left:18px;border-left:3px solid var(--skyviz-sky);color:var(--skyviz-muted)}
.skyviz-symbol{display:block;flex-shrink:0;width:160px;height:136px;max-width:100%;overflow:visible}
.skyviz-shadow{fill:#d5e6ef;opacity:.45}
.skyviz-platform-side{fill:#a9cbdc;stroke:#8db7cc;stroke-width:1}
.skyviz-platform-top{fill:#e4f2f8;stroke:#accddd;stroke-width:1}
.skyviz-symbol-ink{fill:none;stroke:var(--skyviz-ink);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.skyviz-symbol-ink .skyviz-fill{fill:var(--skyviz-sky)}
.skyviz-symbol-ink .skyviz-paper{fill:#fff}

/* Three independent axes, with the job question always above the explanation. */
.skyviz-career .skyviz-career-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.skyviz-career .skyviz-axis{min-width:0;padding:24px;background:#fff;border-top:3px solid var(--skyviz-blue)}
.skyviz-career .skyviz-axis:nth-child(2){border-top-color:var(--skyviz-sky);background:#edf6fb}
.skyviz-career .skyviz-axis:nth-child(3){border-top-color:var(--skyviz-ink)}
.skyviz-career .skyviz-symbol{margin:0 auto 24px}
.skyviz-career .skyviz-axis-name{font-size:27px!important;font-weight:750;letter-spacing:-.03em}
.skyviz-career .skyviz-key{padding:0 0 17px;margin:16px 0!important;border-bottom:1px solid var(--skyviz-line);color:var(--skyviz-blue);font-weight:600}
.skyviz-career .skyviz-axis>p:last-child{color:var(--skyviz-muted)}

/* An unscaled total with four real cost components; no invented chart shares. */
.skyviz-funding .skyviz-cost-layout{display:grid;grid-template-columns:minmax(200px,.65fr) minmax(0,1.6fr);gap:32px;align-items:center}
.skyviz-funding .skyviz-cost-total{position:relative;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px 20px}
.skyviz-funding .skyviz-cost-ring{position:absolute;width:min(100%,260px);aspect-ratio:1;border:20px solid #d1eaf6;border-radius:50%;z-index:-1;box-shadow:inset 0 0 0 1px #b8d8e8,0 0 0 1px #c2dfed}
.skyviz-funding .skyviz-cost-total strong{font-size:30px;margin-bottom:12px;letter-spacing:-.04em}
.skyviz-funding .skyviz-cost-total p{color:var(--skyviz-muted)}
.skyviz-funding .skyviz-cost-parts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.skyviz-funding .skyviz-cost-parts>li{padding:20px!important;background:#fff;border:1px solid var(--skyviz-line)}
.skyviz-funding .skyviz-symbol{width:116px;height:auto;margin:0 auto 12px}
.skyviz-funding .skyviz-cost-parts strong{display:block;margin-bottom:8px}
.skyviz-funding .skyviz-cost-parts p{color:var(--skyviz-muted)}
.skyviz-funding .skyviz-takeaway span{display:inline-block;margin-right:8px;color:var(--skyviz-sky)}

/* A contract paper paired with a usable five-row checklist. */
.skyviz-contract .skyviz-contract-layout{display:grid;grid-template-columns:minmax(160px,.55fr) minmax(0,1.5fr);gap:36px;align-items:center}
.skyviz-contract .skyviz-contract-paper svg{display:block;width:100%;max-width:250px;margin:auto;overflow:visible}
.skyviz-contract .skyviz-paper-shadow{fill:#c0dbe9}
.skyviz-contract .skyviz-paper-sheet{fill:#fff;stroke:#9abfd2;stroke-width:2}
.skyviz-contract .skyviz-paper-fold{fill:#dceef7;stroke:#9abfd2;stroke-width:2;stroke-linejoin:round}
.skyviz-contract .skyviz-paper-lines{fill:none;stroke:#a1bdcc;stroke-width:5;stroke-linecap:round}
.skyviz-contract .skyviz-paper-checks{fill:none;stroke:#17648b;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.skyviz-contract .skyviz-paper-pen{fill:#78c6e8;stroke:#102d45;stroke-width:2}
.skyviz-contract .skyviz-checklist{margin:0;background:#fff;border-top:2px solid var(--skyviz-ink)}
.skyviz-contract .skyviz-checklist>div{padding:19px 22px;border-bottom:1px solid var(--skyviz-line)}
.skyviz-contract .skyviz-checklist dt{display:flex;align-items:center;gap:12px;margin-bottom:7px;font-weight:750;color:var(--skyviz-ink)}
.skyviz-contract .skyviz-checklist dd{margin:0 0 0 34px;color:var(--skyviz-muted)}
.skyviz-contract .skyviz-check-box{display:inline-block;width:22px;height:22px;border:1.5px solid #6093ae;border-radius:3px;flex-shrink:0;background:var(--skyviz-pale)}

/* A route runs behind three stops; ordering is also explicit in the HTML. */
.skyviz-fieldwork .skyviz-journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;position:relative}
.skyviz-fieldwork .skyviz-journey::before{content:"";position:absolute;left:12%;right:12%;top:102px;border-top:3px dashed #91bfd5;z-index:-1}
.skyviz-fieldwork .skyviz-journey>li{min-width:0}
.skyviz-fieldwork .skyviz-journey-art{display:flex;justify-content:center;margin-bottom:26px}
.skyviz-fieldwork .skyviz-journey-copy{padding:24px;background:#fff;border-bottom:3px solid var(--skyviz-sky)}
.skyviz-fieldwork .skyviz-journey>li:last-child .skyviz-journey-copy{border-bottom-color:var(--skyviz-ink)}
.skyviz-fieldwork .skyviz-phase{color:var(--skyviz-blue);font-weight:700}
.skyviz-fieldwork .skyviz-journey-copy ul{margin-top:18px!important}
.skyviz-fieldwork .skyviz-journey-copy ul li{position:relative;padding-left:16px!important;color:var(--skyviz-muted)}
.skyviz-fieldwork .skyviz-journey-copy ul li+li{margin-top:10px!important}
.skyviz-fieldwork .skyviz-journey-copy ul li::before{content:"";position:absolute;left:0;top:.7em;width:5px;height:5px;background:var(--skyviz-blue);border-radius:50%}

/* Four linked questions, not a statement that every region uses one process. */
.skyviz-policy .skyviz-policy-path{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;counter-reset:skyviz-question}
.skyviz-policy .skyviz-policy-path>li{position:relative;min-width:0;padding:26px!important;background:#fff;border:1px solid var(--skyviz-line);border-left:4px solid var(--skyviz-sky)}
.skyviz-policy .skyviz-policy-path>li:nth-child(2),.skyviz-policy .skyviz-policy-path>li:nth-child(3){background:#edf6fb}
.skyviz-policy .skyviz-symbol{width:110px;height:auto;float:right;margin:0 0 8px 14px}
.skyviz-policy .skyviz-phase{font-weight:700;color:var(--skyviz-blue)}
.skyviz-policy .skyviz-policy-path h3{max-width:14em}
.skyviz-policy .skyviz-policy-path>li>p:last-child{clear:both;padding-top:12px;color:var(--skyviz-muted)}

/* A ledger keeps all quantities unspecified and all rows equal in scale. */
.skyviz-operations .skyviz-ledger{display:grid;gap:12px}
.skyviz-operations .skyviz-ledger-row{display:grid;grid-template-columns:28px 105px minmax(170px,.9fr) minmax(0,1.1fr);gap:20px;align-items:center;padding:18px 24px!important;border:1px solid var(--skyviz-line);background:#fff}
.skyviz-operations .skyviz-symbol{width:105px;height:auto}
.skyviz-operations .skyviz-math{font-size:30px;font-weight:500;color:var(--skyviz-blue);text-align:center}
.skyviz-operations .skyviz-ledger-name strong{font-size:24px}
.skyviz-operations .skyviz-ledger-name p{margin-top:5px!important;color:var(--skyviz-muted)}
.skyviz-operations .skyviz-ledger-note{padding-left:22px;border-left:1px solid var(--skyviz-line);color:var(--skyviz-muted)}
.skyviz-operations .skyviz-ledger-row-0{border-top:3px solid var(--skyviz-blue)}
.skyviz-operations .skyviz-ledger-row-3{background:#e2f1f8;border-top:2px solid var(--skyviz-ink)}
.skyviz-operations .skyviz-takeaway{text-align:center}

@media(max-width:1000px){
 .skyviz{padding:28px}
 .skyviz-career .skyviz-career-grid{gap:12px}
 .skyviz-career .skyviz-axis{padding:20px}
 .skyviz-fieldwork .skyviz-journey{gap:16px}
 .skyviz-fieldwork .skyviz-journey-copy{padding:20px}
 .skyviz-funding .skyviz-cost-layout{grid-template-columns:1fr;gap:24px}
 .skyviz-funding .skyviz-cost-total{min-height:245px;padding:25px}
 .skyviz-funding .skyviz-cost-ring{width:245px}
 .skyviz-funding .skyviz-cost-parts>li{display:flex;align-items:center;gap:12px}
 .skyviz-funding .skyviz-symbol{width:96px;margin:0}
 .skyviz-contract .skyviz-contract-layout{gap:22px}
 .skyviz-operations .skyviz-ledger-row{grid-template-columns:24px 85px minmax(140px,1fr) minmax(0,1fr);gap:14px;padding:18px!important}
 .skyviz-operations .skyviz-symbol{width:85px}
}
@media(max-width:767px){
 .skyviz{margin:32px 0;padding:22px 20px}
 .skyviz .skyviz-heading{padding-bottom:20px;margin-bottom:24px}
 .skyviz .skyviz-title{font-size:27px!important}
 .skyviz .skyviz-caption{margin-top:24px;padding-top:20px}
 .skyviz .skyviz-takeaway{padding:20px;margin-top:22px!important}
 .skyviz-career .skyviz-career-grid{grid-template-columns:1fr;gap:18px}
 .skyviz-career .skyviz-axis{padding:22px}
 .skyviz-career .skyviz-symbol{float:right;width:112px;height:auto;margin:0 0 12px 12px}
 .skyviz-career .skyviz-axis-name{font-size:27px!important}
 .skyviz-career .skyviz-key{clear:both;margin-top:20px!important}
 .skyviz-funding .skyviz-cost-parts{grid-template-columns:1fr;gap:12px}
 .skyviz-funding .skyviz-cost-parts>li{padding:20px 16px!important;gap:14px}
 .skyviz-funding .skyviz-symbol{width:90px}
 .skyviz-contract .skyviz-contract-layout{grid-template-columns:1fr;gap:20px}
 .skyviz-contract .skyviz-contract-paper svg{max-width:180px}
 .skyviz-contract .skyviz-checklist>div{padding:20px 18px}
 .skyviz-fieldwork .skyviz-journey{grid-template-columns:1fr;gap:24px}
 .skyviz-fieldwork .skyviz-journey::before{left:42px;right:auto;top:0;bottom:0;border-top:0;border-left:3px dashed #91bfd5}
 .skyviz-fieldwork .skyviz-journey>li{display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;align-items:start}
 .skyviz-fieldwork .skyviz-journey-art{margin:14px 0 0}
 .skyviz-fieldwork .skyviz-symbol{width:84px;height:auto}
 .skyviz-fieldwork .skyviz-journey-copy{padding:20px 18px}
 .skyviz-fieldwork .skyviz-journey-copy h3{margin:10px 0!important}
 .skyviz-policy .skyviz-policy-path{grid-template-columns:1fr;gap:18px}
 .skyviz-policy .skyviz-policy-path>li{padding:22px!important}
 .skyviz-policy .skyviz-symbol{width:96px;margin-left:12px}
 .skyviz-operations .skyviz-ledger-row{grid-template-columns:22px 76px minmax(0,1fr);gap:12px;padding:18px 16px!important}
 .skyviz-operations .skyviz-symbol{width:76px}
 .skyviz-operations .skyviz-ledger-note{grid-column:2/-1;padding:14px 0 0;border-left:0;border-top:1px solid var(--skyviz-line)}
 .skyviz-operations .skyviz-ledger-name strong{font-size:24px}
}
@media(max-width:440px){
 .skyviz{padding:22px 16px}
 .skyviz-career .skyviz-axis{padding:20px 18px}
 .skyviz-career .skyviz-symbol{width:92px}
 .skyviz-funding .skyviz-cost-parts>li{gap:10px}
 .skyviz-funding .skyviz-symbol{width:76px}
 .skyviz-fieldwork .skyviz-journey>li{grid-template-columns:1fr;gap:0}
 .skyviz-fieldwork .skyviz-journey::before{left:42px}
 .skyviz-fieldwork .skyviz-journey-art{justify-content:flex-start;margin:0 0 8px}
 .skyviz-fieldwork .skyviz-journey-copy{position:relative}
 .skyviz-policy .skyviz-policy-path>li{padding:20px 18px!important}
 .skyviz-policy .skyviz-symbol{width:82px}
 .skyviz-operations .skyviz-ledger-row{grid-template-columns:20px 62px minmax(0,1fr);gap:10px;padding:18px 12px!important}
 .skyviz-operations .skyviz-symbol{width:62px}
}
@media print{
 .skyviz{box-shadow:none;background:#fff;border-color:#8aa6b5;padding:24px;color:#102d45;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .skyviz .skyviz-takeaway{border:1px solid #8aa6b5}
}
