.roi-section{padding:80px 0;scroll-margin-top:88px}
.roi-eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);margin:0 0 16px}
.roi-section h2{font-size:clamp(32px,4.5vw,50px);line-height:1.1;margin:0 0 18px;max-width:21ch}
.roi-intro{font-size:16px;line-height:1.6;max-width:65ch;margin:0 0 30px}
.roi-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
.roi-inputs,.roi-results{border:1px solid var(--color-rule);border-radius:4px;padding:28px;background:var(--color-surface)}
.roi-inputs{background:transparent}
.roi-field{margin-bottom:24px}
.roi-field-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}
.roi-field label,.roi-costs label{font-size:14px;line-height:1.45;color:var(--color-text)}
.roi-field input[type=number]{width:90px;padding:9px 10px;text-align:right}
.roi-field input[type=range]{display:block;width:100%;height:24px;accent-color:var(--color-accent);cursor:pointer}
.roi-field input,.roi-costs input{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-rule);border-radius:3px;font:16px var(--font-mono);min-height:44px}
.roi-field input:focus-visible,.roi-costs input:focus-visible{outline:2px solid var(--color-mint);outline-offset:3px}
.roi-field input:invalid,.roi-costs input:invalid{border-color:var(--color-amber)}
.roi-range-labels{display:flex;justify-content:space-between;font-size:12px;color:var(--color-ink-2)}
.roi-note{font-size:13px;line-height:1.6;margin:14px 0;color:var(--color-ink-2)}
.roi-value{display:block;font-family:var(--font-heading);font-size:clamp(44px,6vw,72px);line-height:1.15;color:var(--color-mint);overflow-wrap:anywhere}
.roi-subtotal{font-size:16px;line-height:1.7;margin:12px 0 26px}
.roi-bar{display:flex;height:8px;overflow:hidden;border-radius:2px;background:var(--color-rule);margin-bottom:20px}
.roi-bar span{transition:width .2s}
.roi-breakdown{margin:0;padding:0;list-style:none}
.roi-breakdown li{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--color-rule);font-size:14px}
.roi-breakdown strong{font-family:var(--font-mono);font-weight:500;color:var(--color-text);white-space:nowrap}
.roi-dot{display:inline-block;width:8px;height:8px;margin-right:8px}
.roi-costs{border-top:1px solid var(--color-rule);margin-top:26px;padding-top:22px}
.roi-costs summary{cursor:pointer;color:var(--color-text);font-size:16px;min-height:32px}
.roi-cost-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.roi-costs input{width:100%;display:block;margin-top:8px;padding:10px}
.roi-returns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0 0}
.roi-returns dt{font-size:13px;margin-bottom:6px}
.roi-returns dd{margin:0;font-family:var(--font-mono);font-size:19px;color:var(--color-text)}
.roi-returns>div:last-child{grid-column:1/-1}
.roi-method{margin-top:24px;border-top:1px solid var(--color-rule);padding-top:18px;font-size:14px;line-height:1.6}
.roi-method summary{cursor:pointer;color:var(--color-text)}
.roi-method ol{padding-left:20px}
.roi-reset{background:transparent;border:0;padding:8px 0;color:var(--color-accent);text-decoration:underline;cursor:pointer;font:14px inherit}
.roi-error{min-height:1.5em;color:var(--color-amber);font-size:14px;line-height:1.5}
.film-actions{padding:12px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:1px solid var(--color-rule)}
.film-actions a{font-size:13px}.film-status{font-size:12px;margin:0;width:100%;line-height:1.4}
.fi-beta-note{color:var(--color-amber);font-family:var(--font-mono);font-size:13px;letter-spacing:.04em;margin:20px 0 0}
.fi-connect-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fi-connect-grid article{border:1px solid var(--color-rule);padding:24px;background:var(--color-surface)}
.fi-connect-grid h3{font-size:22px;margin:12px 0}
.fi-connect-grid p{font-size:16px;line-height:1.6;margin:0}
@media(max-width:760px){.roi-layout{grid-template-columns:1fr}.roi-inputs,.roi-results{padding:22px}.roi-section{padding:56px 0}.fi-connect-grid{grid-template-columns:1fr}.roi-cost-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.roi-bar span{transition:none}}
