.roi-page-header{gap:.5rem;margin:.25rem 0 1.25rem;display:grid}.roi-page-header h1{font-family:var(--font-heading);letter-spacing:-.01em;margin:0;font-size:clamp(1.8rem,3.2vw,2.4rem);font-weight:800}.roi-page-header__lead{color:#444;margin:0;font-size:1rem;line-height:1.6}.roi-pivot-tabs{border:1px solid #0000001a;border-radius:10px;grid-template-columns:1fr 1fr;width:100%;margin:0 0 .85rem;display:grid;overflow:hidden}.roi-pivot-tabs>button:first-child{border-right:1px solid #0000001a}.roi-pivot-tabs button{cursor:pointer;color:#555;background:#f8f8f8;border:none;justify-content:center;align-items:center;gap:.4rem;padding:.6rem 1.25rem;font-family:inherit;font-size:.875rem;display:flex}.roi-pivot-tabs button.is-active{color:#fff;background:#c8102e;font-weight:700}@media (min-width:640px){.roi-pivot-tabs{width:fit-content;max-width:100%;display:flex}.roi-pivot-tabs>button:first-child{border-right:none}}.roi-toolbar{background:#fff;border:1px solid #00000014;border-radius:10px;flex-wrap:wrap;align-items:flex-end;gap:.85rem 1.1rem;margin-bottom:1rem;padding:.85rem 1rem;display:flex;position:relative}.roi-controls-row{align-items:stretch;gap:1rem;margin-bottom:1rem;display:flex}.roi-controls-main{flex:1;min-width:0}.roi-controls-row .roi-toolbar{margin-bottom:0}.roi-field{gap:.3rem;display:grid;position:relative}.roi-field__label{font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);font-size:.66rem;font-weight:800}.roi-select{appearance:none;min-height:36px;color:var(--color-secondary);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23444' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right .65rem center no-repeat;border:1px solid #00000029;border-radius:7px;min-width:9rem;padding:.42rem 1.9rem .42rem .7rem;font-size:.84rem;font-weight:600}.roi-select:hover{border-color:#00000059}.roi-select:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.roi-select--btn{cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;display:inline-flex}.roi-toolbar .roi-select--fixed{text-overflow:ellipsis;width:15rem;max-width:100%}.roi-field--maturity{min-width:10rem}.roi-ms-pop{z-index:30;background:#fff;border:1px solid #00000024;border-radius:10px;gap:.15rem;min-width:13rem;padding:.5rem;display:grid;position:absolute;top:calc(100% + .35rem);left:0;box-shadow:0 8px 24px #0000001f}.roi-ms-opt{cursor:pointer;border-radius:7px;align-items:center;gap:.5rem;padding:.4rem .5rem;font-size:.87rem;display:flex}.roi-ms-opt:hover{background:#f5f5f6}.roi-ms-opt input{opacity:0;width:1px;height:1px;position:absolute}.roi-ms-check{color:#fff;border:1.5px solid #00000040;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:17px;height:17px;display:inline-flex}.roi-ms-opt.is-on .roi-ms-check{background:var(--color-primary);border-color:var(--color-primary)}.roi-ms-dot{border-radius:999px;flex-shrink:0;width:9px;height:9px}.roi-ms-clear{color:var(--color-primary);text-align:left;cursor:pointer;background:0 0;border:none;margin-top:.3rem;padding:.35rem .5rem;font-size:.82rem;font-weight:700}.roi-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:1080px){.roi-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start}}.roi-chart{background:#fff;border:1px solid #00000014;border-radius:12px;padding:1rem 1.1rem 1.1rem;box-shadow:0 2px 12px #0000000a}.roi-chart__head{margin:0 0 .6rem}.roi-chart__drill-controls{align-items:center;gap:.5rem;margin:.35rem 0 0;display:flex}.roi-chart__zoomout{color:#555;cursor:pointer;background:#fff;border:1px solid #00000024;border-radius:999px;align-items:center;gap:.3rem;padding:.15rem .55rem;font-family:inherit;font-size:.8rem;font-weight:600;line-height:normal;display:inline-flex}.roi-chart__zoomout svg{flex-shrink:0}.roi-chart__zoomout:hover{color:var(--color-primary);border-color:#0000004d}.roi-chart__zoomout:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.roi-chart__status{gap:0;margin:.4rem 0 0;display:grid}.roi-chart__drill{flex-wrap:wrap;align-items:center;gap:.3rem;margin:0;line-height:normal;display:flex}.roi-chart__drill-part{color:var(--color-secondary);font-size:.84rem;font-weight:600}.roi-chart__drill-chev{color:#0000004d;font-size:.8rem}.roi-chart__count{color:var(--color-text-muted);margin:.2rem 0 0;font-size:.8rem}.roi-chart__svg-wrap{max-width:820px;margin-inline:auto;position:relative}.roi-chart__svg{width:100%;height:auto;max-height:820px;display:block}.roi-zone-label{font-family:var(--font-heading);letter-spacing:.06em;font-size:13px;font-weight:800}.roi-axis-label{font-family:var(--font-heading);fill:#444;letter-spacing:.04em;font-size:17px;font-weight:700}.roi-zone-label,.roi-axis-label,.roi-divider{pointer-events:none}.roi-quadrant-hit.is-openable{cursor:zoom-in}.roi-zoom-control,.roi-zoom-close{cursor:pointer}.roi-zoom-control.is-unavailable{opacity:.35;cursor:default}.roi-zoom-control circle,.roi-zoom-close circle{transition:stroke-width .12s,fill .12s}.roi-quadrant-hit{transition:fill .12s}.roi-zoom-control:focus,.roi-zoom-close:focus{outline:none}.roi-zoom-control:focus-visible circle,.roi-zoom-close:focus-visible circle{stroke-width:4px;stroke:currentColor}.roi-zoom-tip{opacity:0;transition:opacity .12s}.roi-zoom-control:focus-visible .roi-zoom-tip,.roi-zoom-close:focus-visible .roi-zoom-tip{opacity:1}@media (hover:hover){.roi-zoom-control:not(.is-unavailable):hover .roi-zoom-tip,.roi-zoom-close:hover .roi-zoom-tip{opacity:1}.roi-zoom-control:not(.is-unavailable):hover>circle,.roi-zoom-close:hover>circle{fill:currentColor}.roi-zoom-control:not(.is-unavailable):hover>line,.roi-zoom-close:hover>line{stroke:#fff}}.roi-dot{cursor:pointer;transform-box:fill-box;transform-origin:50%;transition:transform .12s}.roi-dot circle{transition:r .12s,stroke-width .12s}.roi-dot.is-hovered{transform:scale(1.04)}.roi-dot:focus{outline:none}.roi-dot.is-focused circle{stroke:#000;stroke-width:3.5px}.roi-placement{transform:translateY(var(--roi-placement-shift,0px));z-index:5;color:#fff;pointer-events:none;background:#111;border-radius:10px;width:min(340px,70%);padding:.85rem 1rem .9rem;font-size:.82rem;line-height:1.45;position:absolute;box-shadow:0 8px 28px #00000047}.roi-placement.is-pinned{pointer-events:auto}.roi-placement :where(p){margin:0}.roi-placement__head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.roi-placement__quadrant{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800}.roi-placement__close{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:999px;flex-shrink:0;width:24px;height:24px;margin:-.3rem -.4rem 0 0;font-size:1.1rem;line-height:1}.roi-placement__close:hover{background:#ffffff24}.roi-placement__close:focus-visible,.roi-placement__link:focus-visible{outline-offset:2px;outline:2px solid #fff}.roi-placement__title{font-family:var(--font-heading);margin-top:.25rem;font-size:.98rem;font-weight:800}.roi-placement__section{margin-top:.7rem}.roi-placement__section h4{letter-spacing:.05em;text-transform:uppercase;color:#bdbdbd;margin:0 0 .15rem;font-size:.7rem;font-weight:700}.roi-placement__tier{font-weight:700}.roi-placement__rationale,.roi-placement__note{color:#e0e0e0;margin-top:.25rem}.roi-placement__factors{flex-wrap:wrap;gap:.3rem;margin:.35rem 0 0;padding:0;list-style:none;display:flex}.roi-placement__factor{color:#e0e0e0;border:1px solid #5c5c5c;border-radius:999px;padding:.1rem .5rem;font-size:.74rem}.roi-placement__factor.is-binding{color:#111;background:#fff;border-color:#fff;font-weight:700}.roi-placement__foot{border-top:1px solid #333;margin-top:.75rem;padding-top:.55rem}.roi-placement__hint{color:#bdbdbd;font-size:.75rem}.roi-placement__link{color:#fff;font-weight:700;text-decoration:underline}@media (max-width:760px),(hover:none){.roi-placement{width:auto;box-shadow:none;margin-top:.6rem;position:static;transform:none}}.roi-chart__legend{color:var(--color-text-muted);flex-wrap:wrap;gap:.35rem 1.25rem;margin:.25rem 0 0;padding:0 .25rem;font-size:.8rem;list-style:none;display:flex}.roi-chart__legend li{align-items:center;gap:.4rem;display:flex}.roi-chart__legend-dot{border-radius:50%;width:.7rem;height:.7rem;display:inline-block}.roi-sidebar{background:#fff;border:1px solid #00000014;border-radius:12px;flex-direction:column;gap:.6rem;max-height:720px;padding:1rem 1.1rem;display:flex;box-shadow:0 2px 12px #0000000a}.roi-sidebar__head{border-bottom:1px solid #00000014;flex-direction:column;gap:.45rem;padding-bottom:.6rem;display:flex}.roi-sidebar__head h3{font-family:var(--font-heading);color:var(--color-secondary);margin:0;font-size:1rem;font-weight:800}.roi-sidebar__count{color:var(--color-text-muted);font-variant-numeric:tabular-nums;background:#0000000f;border-radius:999px;margin-left:.3rem;padding:.05rem .45rem;font-size:.75rem;font-weight:700;display:inline-block}.roi-sidebar__hint{color:var(--color-text-muted);margin:0;font-size:.74rem}.roi-minimap{box-sizing:border-box;border:1px solid #00000014;border-radius:12px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.25rem;max-width:170px;padding:.4rem .5rem .3rem;display:flex}@media (min-width:761px) and (max-width:869.98px){.roi-minimap{align-self:flex-start}}.roi-minimap__title{letter-spacing:.08em;text-align:center;text-transform:uppercase;white-space:nowrap;color:#9ca3af;margin:0;font-family:inherit;font-size:.72rem;font-weight:700;line-height:1.2}.roi-minimap__grid{aspect-ratio:1;border:1px solid #00000026;border-radius:4px;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;width:78px;max-width:100%;display:grid;position:relative;overflow:hidden}.roi-minimap__grid:before,.roi-minimap__grid:after{content:"";pointer-events:none;z-index:1;position:absolute}.roi-minimap__grid:before{background:repeating-linear-gradient(#0000001f 0 1.56px,#0000 1.56px 3.12px);width:.78px;top:0;bottom:0;left:calc(50% - .39px)}.roi-minimap__grid:after{background:repeating-linear-gradient(90deg,#0000001f 0 1.56px,#0000 1.56px 3.12px);height:.78px;top:calc(50% - .39px);left:0;right:0}.roi-minimap__cell{font:inherit;cursor:default;background-color:#f4f5f6;border:0;border-radius:0;margin:0;padding:0;transition:background-color .12s;position:relative;box-shadow:inset 0 0 0 .31px #0003}.roi-minimap__cell.is-available{cursor:pointer}.roi-minimap__cell.is-unavailable{cursor:default}.roi-minimap__cell:focus-visible{outline-offset:-4px;z-index:2;outline:2px dashed}.roi-minimap__cell.is-open,.roi-minimap__cell.is-open:focus-visible{outline:1px solid var(--color-primary);outline-offset:-1px;background-color:color-mix(in srgb, var(--color-primary) 8%, #f4f5f6);z-index:2}@media (hover:hover){.roi-minimap__cell.is-available:hover{background-color:#e5e6e7}}.roi-minimap__label,.roi-minimap__count{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.roi-minimap__back{color:var(--color-text-muted);text-align:center;cursor:pointer;background:0 0;border:none;margin:.5rem 0 0;padding:0;font-family:inherit;font-size:.76rem;font-weight:600}.roi-minimap__back:hover{color:var(--color-primary);text-decoration:underline}.roi-minimap__back:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.roi-list{flex-direction:column;gap:.3rem;margin:0;padding:.2rem 0 0;list-style:none;display:flex;overflow:auto}.roi-list__empty{color:var(--color-text-muted);margin:.5rem 0;font-size:.9rem}.roi-group__head{cursor:pointer;text-align:left;border:none;border-radius:7px;align-items:center;gap:.45rem;width:100%;margin-bottom:.2rem;padding:.42rem .55rem;font-family:inherit;font-size:.74rem;font-weight:800;display:flex}.roi-group__dot{border-radius:999px;flex-shrink:0;width:8px;height:8px}.roi-group__label{text-transform:uppercase;letter-spacing:.03em;font-size:.74rem;font-weight:800}.roi-group__tag{opacity:.75;font-size:.74rem;font-weight:600}.roi-group__count{background:#ffffffa6;border-radius:999px;margin-left:auto;padding:.02rem .5rem;font-size:.74rem;font-weight:800}.roi-group__chev{transition:transform .15s}.roi-group__chev.is-collapsed{transform:rotate(-90deg)}.roi-group__items{margin:0;padding:0;list-style:none}.roi-list__item{cursor:pointer;border-radius:7px;align-items:flex-start;gap:.55rem;padding:.45rem .5rem;display:flex}.roi-list__item.is-hovered,.roi-list__item.is-selected{background:#f7f7f8;box-shadow:inset 0 0 0 1px #0000000f}.roi-list__item.is-selected{box-shadow:inset 0 0 0 2px #000}.roi-list__num{border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.76rem;font-weight:800;display:inline-flex}.roi-list__body{flex:1;min-width:0}.roi-list__title--static{font-family:var(--font-heading);color:inherit;font-size:.85rem;font-weight:700;line-height:1.25;display:block}.roi-list__toggle{width:100%;font-family:var(--font-heading);text-align:left;color:inherit;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:.5rem;padding:0;font-size:.85rem;font-weight:700;line-height:1.25;display:flex}.roi-list__toggle:hover span{text-decoration:underline}.roi-list__toggle:focus-visible,.roi-list__title--static:focus-visible{outline-offset:2px;border-radius:2px;outline:2px solid #111}.roi-list__title--static:focus:not(:focus-visible){outline:none}.roi-list__chev{color:#666;flex:none;margin-top:.4em;transition:transform .15s}.roi-list__chev.is-open{transform:rotate(180deg)}.roi-cs{border-left:2px solid #0000001a;flex-direction:column;gap:.6rem;margin:.5rem 0 .2rem;padding:0 0 0 .75rem;list-style:none;display:flex}.roi-cs__item{flex-direction:column;gap:.15rem;display:flex}.roi-cs__title{color:#222;text-wrap:pretty;font-size:.82rem;font-weight:600;line-height:1.35}.roi-cs__title--link{text-decoration:none}.roi-cs__title--link:hover{color:var(--color-primary,#c8102e);text-decoration:underline}.roi-list__item:has(.roi-cs){align-items:start}.roi-list__item:has(.roi-cs) .roi-list__num{margin-top:-2px}.roi-method{background:#fff;border:1px solid #00000014;border-radius:12px;margin-top:1rem;padding:0}.roi-method__summary{cursor:pointer;font-size:.95rem;font-weight:800;font-family:var(--font-heading);justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem 1.1rem;list-style:none;display:flex}.roi-method__summary::-webkit-details-marker{display:none}.roi-method__chev{transition:transform .15s}.roi-method[open] .roi-method__chev{transform:rotate(180deg)}.roi-method__body{margin-top:0;padding:0 1.1rem .9rem}.roi-method__intro{color:#333;margin:0 0 1rem;line-height:1.6}.roi-method__cols{grid-template-columns:1fr;gap:1.2rem;display:grid}@media (min-width:720px){.roi-method__cols{grid-template-columns:1fr 1fr}}.roi-method__cols h4{margin:0 0 .5rem;font-size:.95rem}.roi-method__tiers{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.roi-method__tiers>li{color:#333;font-size:.87rem;line-height:1.5}.roi-method__tier{color:var(--color-primary);font-weight:800;display:block}.roi-method__rule{color:#333;margin:0 0 .6rem;font-size:.85rem}.roi-method__tiers+.roi-method__rule{margin:.6rem 0 0}.roi-method__factors{grid-template-columns:minmax(0,8.5rem) minmax(0,1fr);gap:.15rem .6rem;margin:.2rem 0 0;font-size:.84rem;display:grid}.roi-method__factors dt{color:#191919;font-weight:700}.roi-method__factors dd{margin:0}@media (max-width:420px){.roi-method__factors{grid-template-columns:minmax(0,1fr)}}.roi-method__note{color:var(--color-text-muted);margin:1rem 0 0;font-size:.85rem;line-height:1.6}.roi-unpublished{background:#0000000a;border-radius:10px;margin:0 0 1rem;padding:.75rem 1rem;font-weight:600}@media (min-width:1600px){.roi-chart__svg{max-height:720px}.roi-chart__svg-wrap{max-width:720px}}@media (max-width:760px){.roi-page-header h1{font-size:30px;line-height:1.12}.roi-page-header__lead{font-size:.92rem}.roi-toolbar{flex-direction:column;align-items:stretch;gap:1.1rem}.roi-field,.roi-toolbar .roi-select--fixed{width:100%}.roi-chart,.roi-sidebar{border-radius:14px}.roi-pivot-tabs{grid-template-columns:1fr 1fr;width:100%;display:grid}.roi-pivot-tabs>button:first-child{border-right:1px solid #0000001a}.roi-pivot-tabs button{text-align:center;overflow-wrap:normal;word-break:normal;padding:.6rem .5rem;font-size:.8rem;line-height:1.25}body:has(.roi-grid){overflow-x:clip}.roi-grid{width:100vw;margin:0 calc(50% - 50vw)}.roi-grid>.roi-chart{border-left:none;border-right:none;border-radius:0;margin:0}.roi-grid>.roi-sidebar{margin:0 4vw}.roi-chart{padding:.9rem .45rem 1rem}.roi-chart__head{padding:0 .55rem}.roi-controls-row{flex-direction:column}.roi-minimap{display:none}.roi-chart__legend{flex-wrap:wrap;gap:.3rem .9rem}.roi-axis-label{font-size:30px}.roi-axis-label--return{transform-origin:22px 358px;transform:translate(14px)rotate(-90deg)}.roi-zone-label{font-size:23px}.roi-dot circle{r:24px}.roi-dot.is-hovered circle{r:29px}.roi-dot.is-selected circle{r:31px}.roi-zoom-control circle,.roi-zoom-close circle{r:27px}.roi-dot text{font-size:22px}}@media (max-width:389px){.roi-pivot-tabs:not(.roi-setup .roi-pivot-tabs) button{gap:.25rem;padding:.6rem .3rem;font-size:.72rem}.roi-pivot-tabs:not(.roi-setup .roi-pivot-tabs) button svg{flex:none;width:12px;height:12px}}@media (max-width:352px){.roi-pivot-tabs:not(.roi-setup .roi-pivot-tabs) button svg{display:none}}.roi-setup{background:#fff;border:1px solid #00000014;border-radius:12px;gap:1rem;margin-bottom:1rem;padding:1.75rem 2.25rem;display:grid}.roi-setup__title{font-family:var(--font-heading);margin:0;font-size:1.5rem;font-weight:800}.roi-setup__intro{color:#555;max-width:62ch;margin:-.4rem 0 0;font-size:1rem;line-height:1.6}.roi-setup__steps{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.roi-setup__step{grid-template-columns:auto 1fr;place-items:center start;gap:.35rem .85rem;display:grid}.roi-setup .roi-pivot-tabs{margin:0}.roi-setup__step>:not(.roi-setup__num):not(.roi-setup__step-title){grid-column:2}.roi-setup__step-title{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;color:#555;margin:0;font-size:.78rem;font-weight:700}.roi-setup__num{color:#333;background:#ececec;border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.8rem;font-weight:700;display:inline-flex}.roi-setup__fields{flex-wrap:wrap;align-items:flex-end;gap:.85rem 1.1rem;display:flex}.roi-field__req{color:#c8102e;margin-left:.2rem}.roi-field__opt{letter-spacing:normal;text-transform:none;margin-left:.3rem;font-weight:600}.roi-setup__help{color:var(--color-text-muted);margin:0;font-size:.82rem;line-height:1.5}.roi-setup__help-star{color:#c8102e;margin-right:.15rem}.roi-setup__footer{border-top:1px solid #0000001a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;padding-top:1.1rem;display:flex}.roi-setup__summary{color:#555;margin:0;font-size:.95rem}.roi-setup__confirm:after{content:"→";content:"→" / "";margin-left:.5rem}.roi-setup__confirm:disabled{color:#666;opacity:1;cursor:not-allowed;background:#e6e6e6;border-color:#e6e6e6}.roi-setup__chev{color:var(--color-text-muted);margin:0 .4rem;font-size:.85rem}.roi-select:disabled{color:#8a8a8a;cursor:not-allowed;background-color:#f1f1f1}@media (max-width:640px){.roi-setup__fields{flex-direction:column;justify-self:stretch;align-items:stretch;gap:1.1rem}.roi-setup .roi-pivot-tabs button{padding:.6rem .5rem}.roi-setup__fields .roi-field{width:100%}}
