.self-hosted-section{background:linear-gradient(150deg,#f5f3fc,#edf7fd)}
.self-hosted-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.9rem}
.self-hosted-heading .eyebrow{margin:0}
.stage-badge{display:inline-block;background:#e7e0fa;color:#49367c;border:1px solid #bcb0de;border-radius:999px;padding:.45rem .85rem;font-size:.78rem;font-weight:750}
.deployment-decision{margin:1.7rem 0}
.hosting-comparison{overflow-x:auto;background:white;border:1px solid var(--line);border-radius:14px;margin:2rem 0 3rem}
.hosting-comparison:focus-visible,.harness-explainer summary:focus-visible{outline:3px solid #7bc8f4;outline-offset:4px}
.hosting-comparison table{border-collapse:collapse;width:100%;min-width:650px;font-size:.94rem}
.hosting-comparison caption{text-align:left;font-weight:750;padding:1rem 1.2rem;color:var(--ink)}
.hosting-comparison th,.hosting-comparison td{padding:1.1rem 1.2rem;border-top:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.6}
.hosting-comparison thead th{background:#eeeaf8;color:#35295e}
.hosting-comparison tbody th{width:18%;font-size:.85rem;color:#4c3a7f}
.hosting-comparison td{width:41%}
.self-hosted-budget{align-items:start;margin:2rem 0}
.hardware-allowance{border-top:4px solid #7763c7}
.allowance-value{font-size:clamp(2.25rem,4vw,3.35rem);font-weight:850;line-height:1.15;letter-spacing:-.05em;color:#34265b;margin:.75rem 0 1rem}
.hardware-allowance h3{font-size:1.25rem}
.self-hosted-capacity h3{margin-top:0}
.hosting-outcomes{margin:2rem 0}
.harness-explainer{border:1px solid #bbb0dd;background:#fbfaff;border-radius:12px;margin:2rem 0}
.harness-explainer summary{font-weight:750;cursor:pointer;padding:1.2rem 1.4rem;color:#49367c}
.harness-explainer>div{padding:0 1.4rem .6rem}
.hosting-next-step{border-left:4px solid #7763c7;padding:1rem 1.5rem;margin-top:2rem;background:#ffffffb8}
.hosting-next-step h3{margin-top:0}
@media(max-width:680px){.self-hosted-heading{align-items:flex-start}.self-hosted-budget{gap:1.75rem}.hosting-comparison th,.hosting-comparison td{padding:.85rem}.hosting-comparison{margin-bottom:2rem}.hosting-next-step{padding:1rem}.harness-explainer summary{padding:1.1rem}.harness-explainer>div{padding:0 1.1rem .6rem}.hardware-allowance{padding:1.3rem}}
@media print{.self-hosted-section{background:white}.hosting-comparison{overflow:visible}.hosting-comparison table{min-width:0;font-size:9pt}.hosting-comparison th,.hosting-comparison td{padding:.45rem}.self-hosted-budget,.hosting-outcomes{display:block}.self-hosted-budget>*,.hosting-outcomes>*{margin:1rem 0;break-inside:avoid}.stage-badge{background:white}.harness-explainer{display:none}}
