.tool-pathfinder,.tool-result,.tool-calculator{color:var(--ink,#1c184f)}
.tool-preview{margin:20px auto;max-width:1184px}.tool-caution{margin:42px 0 72px;padding-top:22px;border-top:1px solid var(--line,#e3dde9);font-size:13px;line-height:1.6;color:var(--muted,#696177)}
.tool-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.tool-intro{display:grid;grid-template-columns:1fr .84fr;gap:8%;align-items:center;padding-top:48px;padding-bottom:48px}.tool-intro h1,.tool-calc-hero h1{margin:16px 0 22px}.tool-intro p,.tool-calc-hero p{font-size:clamp(18px,2vw,24px);line-height:1.4;max-width:570px}.tool-privacy{display:inline-block;margin-top:26px;font-size:13px;color:var(--muted,#696177)}.tool-intro-photo{height:390px;border-radius:24px;overflow:hidden;margin:0}.tool-intro-photo img,.tool-calc-hero-photo img{width:100%;height:100%;object-fit:cover}
.tool-flow{display:grid;grid-template-columns:280px minmax(0,1fr);gap:7%;padding-top:70px;padding-bottom:108px}.tool-flow-aside{padding-top:15px}.tool-flow-aside h2{margin:16px 0}.tool-flow-aside p{color:var(--muted,#696177);line-height:1.55}.tool-step-rail{display:grid;gap:18px;margin-top:55px;font-size:13px;color:var(--muted,#696177)}.tool-question-panel{min-height:620px;padding:36px clamp(24px,4vw,58px) 40px;border-radius:24px;background:var(--soft,#f4f3f7)}.tool-progress{display:flex;gap:24px;align-items:center;margin-bottom:46px;color:var(--muted,#696177);font-size:13px}.tool-progress-track{flex:1;height:3px;background:#dcd7e7;border-radius:5px}.tool-progress-track span{display:block;width:33.33%;height:100%;background:var(--ink,#1c184f);transition:width .24s cubic-bezier(.16,1,.3,1)}.tool-question{border:0;padding:0;margin:0}.tool-question[hidden]{display:none}.tool-question legend{font-size:clamp(27px,3vw,40px);line-height:1.15;letter-spacing:-.035em;font-weight:600;max-width:700px}.tool-question>p{margin:15px 0 28px;color:var(--muted,#696177)}.tool-option-grid{display:grid;gap:10px}.tool-option{display:block;cursor:pointer}.tool-option input{position:absolute;opacity:0;width:1px;height:1px}.tool-option input+span{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:68px;padding:16px 22px;background:#fff;border:1px solid #e2dfe8;border-radius:14px;font-size:17px;transition:background .15s,border-color .15s}.tool-option i{display:grid;place-items:center;flex:none;width:25px;height:25px;border:1px solid #c8c2d0;border-radius:50%;font-style:normal;color:transparent}.tool-option i svg{width:16px;height:16px}.tool-option input:checked+span{background:#e3e0fb;border-color:#bdb8ff}.tool-option input:checked+span i{border-color:#1c184f;background:#1c184f;color:#fff}.tool-option input:focus-visible+span{outline:3px solid #837bdf;outline-offset:3px}.tool-flow-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:33px}.tool-flow-controls>[data-path-next]{margin-left:auto}.tool-flow-controls [data-path-back] svg{transform:rotate(180deg)}.tool-error{font-size:13px;color:var(--error,#a23f52);margin:8px 0}.tool-enter-forward{animation:toolForward .24s cubic-bezier(.16,1,.3,1)}.tool-enter-back{animation:toolBack .24s cubic-bezier(.16,1,.3,1)}@keyframes toolForward{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}@keyframes toolBack{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}
.tool-calc-axis{margin-top:50px}.axis-track{height:16px;border-radius:20px;background:#e6e2ed;position:relative}.axis-track>span:first-child{display:block;width:100%;height:100%;background:#bdb8ff;border-radius:20px}.axis-track>span:nth-child(2),.axis-track i{position:absolute;top:-8px;width:3px;height:32px;background:#1c184f}.axis-labels,.tool-range-labels{display:flex;justify-content:space-between;margin-top:10px;color:var(--muted,#696177);font-size:12px}.tool-calc-axis p{margin-top:14px;font-size:13px}
.tool-calc-hero{display:grid;grid-template-columns:1fr .6fr;align-items:stretch;min-height:425px;background:#eceafd;overflow:hidden}.tool-calc-hero>.wrap{padding:75px 48px}.tool-calc-hero-photo{margin:0;min-height:425px}.tool-calc-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:8%;align-items:start}.tool-calc-inputs h2{margin:15px 0 40px}.tool-slider-field,.tool-pct-field{margin-bottom:30px}.tool-slider-field>label,.tool-pct-field>label{display:block;margin-bottom:12px;font-weight:600}.tool-money-input{display:flex;align-items:center;height:64px;padding:0 18px;border:1px solid #c7c2d0;border-radius:12px;background:#fff;font-size:28px}.tool-money-input input{width:100%;border:0;outline:0;font:inherit;color:inherit}.tool-money-input:focus-within{outline:3px solid #bdb8ff;outline-offset:2px}.tool-slider-field input[type=range]{width:100%;margin-top:26px;accent-color:#1c184f}.tool-pct-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tool-pct-field input{width:100%;height:52px;padding:0 14px;border:1px solid #c7c2d0;border-radius:12px;font:inherit}.tool-pct-field input:focus{outline:3px solid #bdb8ff;outline-offset:2px}.tool-pct-field input[aria-invalid=true],.tool-money-input:has(input[aria-invalid=true]){border-color:#a23f52}.tool-input-foot{max-width:570px;font-size:13px;line-height:1.6;color:var(--muted,#696177)}.tool-calc-output{background:#292453;color:#fff;border-radius:24px;padding:38px clamp(25px,4vw,48px)}.tool-calc-output .eyebrow{color:#c9c4ff}.tool-up-to{margin:48px 0 0;color:#d8d4ee}.tool-ceiling{display:block;margin:4px 0;font-size:clamp(44px,5vw,72px);letter-spacing:-.06em;line-height:1}.tool-ceiling-label{max-width:320px;margin:12px 0 45px;font-size:14px;line-height:1.4;color:#d8d4ee}.tool-breakdown{border-top:1px solid #716c90}.tool-breakdown>div{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid #716c90;font-size:14px}.tool-breakdown>div strong{white-space:nowrap}.tool-calc-axis .axis-track{background:#696483}.tool-calc-axis .axis-track>span{background:#bdb8ff}.tool-calc-axis .axis-track i{background:#fff}.tool-calc-axis p{color:#d8d4ee;line-height:1.5}.tool-calc-keep{display:grid;grid-template-columns:1fr minmax(320px,.7fr);gap:8%;border-top:1px solid var(--line,#e3dde9)}.tool-calc-keep h2{margin:15px 0}.tool-calc-keep>div>p{max-width:480px;line-height:1.55}.tool-email-card{padding:34px;background:var(--soft,#f4f3f7);border-radius:24px}.tool-email-card h3{font-size:26px;margin:0 0 10px}.tool-email-card .field{margin-top:25px}.tool-email-card .submit-button{margin-top:22px}.tool-email-card .privacy-line{font-size:12px;line-height:1.5}.tool-gated{min-height:60vh}.tool-gated h1{max-width:760px}
@media(max-width:760px){.tool-intro,.tool-flow,.tool-calc-layout,.tool-calc-keep{grid-template-columns:1fr}.tool-intro{padding-top:30px;gap:28px}.tool-intro-photo{height:240px}.tool-flow{gap:20px;padding-top:35px;padding-bottom:60px}.tool-flow-aside h2,.tool-step-rail{display:none}.tool-flow-aside p{margin:8px 0}.tool-question-panel{min-height:0;padding:25px 20px 30px}.tool-progress{margin-bottom:31px}.tool-question legend{font-size:27px}.tool-option input+span{font-size:15px;min-height:60px;padding:12px 16px}.tool-calc-hero{display:block}.tool-calc-hero>.wrap{padding:50px 24px}.tool-calc-hero-photo{height:180px;min-height:0}.tool-calc-layout{gap:35px}.tool-calc-output{padding:30px 25px}.tool-calc-keep{gap:35px}.tool-actions{gap:16px}.tool-pct-row{gap:12px}}
@media(prefers-reduced-motion:reduce){.tool-enter-forward,.tool-enter-back{animation:none}.tool-progress-track span,.tool-option span{transition:none}}
@media print{header,footer,.tool-calc-hero-photo,.tool-calc-inputs,.tool-calc-keep,.tool-preview,.tool-actions,.site-header,.site-footer{display:none!important}.tool-calc-hero{min-height:0;background:none}.tool-calc-hero>.wrap{padding:0}.tool-calc-layout{display:block;padding:0}.tool-calc-output{color:#000;background:#fff;padding:0}.tool-calc-output .eyebrow,.tool-calc-output p{color:#000}.tool-breakdown>div{border-color:#777}.tool-calc-axis{display:none}}

.tool-storage-note{margin:18px 0;padding:14px 18px;font-size:13px}
.axis-track>span:first-child{position:absolute;top:0;left:0;width:0;height:100%}
.tool-calc-axis .axis-track>span:first-child{background:#bdb8ff}
.axis-track i{position:absolute;top:-9px;width:3px;height:34px;background:#1c184f}
.axis-track i[data-calc-stock-high-pin]{background:#8b80c9}
.tool-calc-axis .axis-track i[data-calc-stock-low-pin]{background:#fff}
.tool-calc-axis .axis-track i[data-calc-stock-high-pin]{background:#ded8ff}
.axis-key{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px;font-size:12px;color:var(--muted,#696177)}
.axis-key span{display:inline-flex;align-items:center;gap:7px}
.axis-key i{display:inline-block;width:10px;height:10px;border-radius:50%;background:#bdb8ff}
.axis-key span:nth-child(2) i{background:#1c184f}
.tool-calc-axis .axis-key{color:#e6e1fb}
.tool-calc-axis .axis-key span:nth-child(2) i{background:#fff}
.tool-assumptions{display:grid;gap:2px;margin:12px 0 28px;padding:22px;background:#f4f3f7;border-radius:18px}
.tool-assumptions p{margin:6px 0;font-size:14px;line-height:1.55;color:#696177}
.tool-assumptions strong{color:#1c184f}
.tool-slider-field input[type=range]{appearance:none;-webkit-appearance:none;height:8px;border-radius:10px;background:#dcd7e7;cursor:pointer}
.tool-slider-field input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:44px;height:44px;border:8px solid #bdb8ff;background:#1c184f;border-radius:50%;box-shadow:0 2px 10px #1c184f2a}
.tool-slider-field input[type=range]::-moz-range-thumb{width:28px;height:28px;border:8px solid #bdb8ff;background:#1c184f;border-radius:50%;box-shadow:0 2px 10px #1c184f2a}
.tool-slider-field input[type=range]:focus-visible{outline:3px solid #837bdf;outline-offset:7px}
@media(max-width:760px){.tool-range-labels span:nth-child(2),.tool-range-labels span:nth-child(4){display:none}.tool-calc-axis .axis-key{gap:9px;font-size:11px}}
@media print{.tool-calc-hero{display:block}.tool-calc-hero>.wrap{padding:0}}

.tool-intro > *{min-width:0}
.tool-intro-photo{width:100%;min-width:0;aspect-ratio:auto}
@media(max-width:900px){.tool-intro{grid-template-columns:minmax(0,1fr)}}
@media(max-width:380px){.tool-flow-controls{flex-direction:column;align-items:stretch}.tool-flow-controls [data-path-back]{align-self:flex-start}.tool-flow-controls [data-path-next]{width:100%;min-height:54px;margin-left:0;white-space:normal;justify-content:center;text-align:center;padding:12px 16px}}

.tool-calc-axis .axis-labels{color:#e6e1fb}

/* Focused Pathfinder: one task, with quiet context kept beside the controls. */
.tool-task{max-width:1184px;display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1fr);gap:clamp(40px,7vw,100px);align-items:start;padding-top:38px;padding-bottom:44px}
.tool-task-context{padding-top:28px;min-width:0}
.tool-task-context>.eyebrow{margin-bottom:18px}
.tool-task-context h1{font-size:clamp(36px,4vw,52px);line-height:1.07;margin:0 0 20px}
.tool-task-context>p{max-width:310px;font-size:16px;line-height:1.6}
.tool-task .tool-step-rail{list-style:none;display:grid;gap:0;padding:0;margin:36px 0;counter-reset:none}
.tool-step-rail li{display:flex;align-items:center;gap:14px;margin:0;padding:11px 0;line-height:1.3;transition:color 160ms ease-out;color:var(--muted)}
.tool-step-rail li>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--soft);font-size:11px;font-variant-numeric:tabular-nums}
.tool-step-rail li>svg{width:16px;height:16px;margin-left:auto;opacity:0;transition:opacity 160ms ease-out}
.tool-step-rail li[aria-current]{color:var(--ink);font-weight:600}
.tool-step-rail li[aria-current]>span{background:var(--peri)}
.tool-step-rail li[data-complete]>svg{opacity:1}
.tool-task-photo{height:190px;max-width:340px;border-radius:18px;overflow:hidden}
.tool-task-photo img{object-position:center 65%}
.tool-task-context .tool-task-caption{font-size:12px;line-height:1.6;margin-top:14px}
.tool-task .tool-question-panel{min-height:600px;padding:36px;border:1px solid #e9e6f0;background:#f6f5f9}
.tool-task .tool-progress{margin-bottom:32px;font-size:12px;gap:20px}
.tool-progress-track span{width:100%;transform:scaleX(.333333);transform-origin:left;transition:transform 240ms cubic-bezier(.16,1,.3,1)}
.tool-question-deck{position:relative;isolation:isolate;min-width:0}
.tool-question{width:100%;min-width:0}
.tool-question legend{padding:0;display:block;width:100%;font-size:clamp(28px,2.65vw,36px);font-weight:500;line-height:1.16;letter-spacing:-.035em;scroll-margin-top:28px}
/* The global form hint style must never reduce the actual question to 12px. */
.tool-question legend>[role=heading]{display:block;font:inherit;line-height:inherit;letter-spacing:inherit;color:inherit}
.tool-question legend:focus{outline:none}
.tool-question>p{font-size:14px;line-height:1.55;margin:16px 0 24px}
.tool-option input+span{min-height:62px;border-radius:12px;padding:14px 17px;line-height:1.4;font-size:15px;transition:background 160ms ease-out,border-color 160ms ease-out,box-shadow 160ms ease-out}
.tool-option input:checked+span{background:#e7e4fa;border-color:#ada4e1}
.tool-option i{width:22px;height:22px;border-color:#c9c3d5;transition:background 160ms ease-out,border-color 160ms ease-out,color 160ms ease-out}
.tool-option i svg{width:14px;height:14px}
.tool-option-grid-balance{grid-template-columns:1fr 1fr}
.tool-question-outgoing{position:absolute;inset:0 0 auto;pointer-events:none;z-index:1}
.tool-task .tool-flow-controls{margin-top:28px;min-height:54px}
.tool-task .tool-flow-controls .pill{gap:16px;padding-inline:25px}
.tool-task .tool-privacy{display:flex;gap:9px;align-items:flex-start;max-width:390px;margin-top:22px;font-size:11px;line-height:1.6}
.tool-privacy>svg{width:16px;height:16px;margin-top:2px}
.tool-task-foot{max-width:1184px}
.tool-task-foot .tool-caution{max-width:960px;font-size:12px;line-height:1.65;margin:0;padding-top:22px}
.tool-task-foot .tool-preview{font-size:11px;margin:18px 0 32px;padding:12px 16px}
.tool-result-privacy{margin-top:36px;font-size:13px;line-height:1.6;color:var(--muted)}
/* Accessible values update immediately; two decorative exact-value surfaces
   perform the studied 150ms out / 150ms in swap without counting through money. */
.tool-number{position:relative;display:inline-grid;font-variant-numeric:tabular-nums}
.tool-ceiling.tool-number{display:grid;min-height:1em}
.tool-number-visible{grid-area:1/1;display:block}
.tool-number-previous{position:absolute;inset:0 auto auto 0;display:block;pointer-events:none;white-space:nowrap}
.tool-breakdown .tool-number-previous{inset:0 0 auto auto}
.tool-calc-output .axis-labels{color:#e6e1fb}
html[data-keyboard=true] .tool-progress-track span,html[data-keyboard=true] .tool-step-rail li,html[data-keyboard=true] .tool-step-rail li>svg{transition:none}
@media(hover:hover) and (pointer:fine){.tool-option input:not(:checked)+span:hover{border-color:#a59db8;background:#fbfaff}}
@media(max-width:900px){.tool-task{grid-template-columns:minmax(0,.55fr) minmax(0,1fr);gap:36px}.tool-task .tool-question-panel{padding:28px}.tool-task-context h1{font-size:38px}}
@media(max-width:700px){
  .tool-task{display:block;padding-top:10px;padding-bottom:28px}
  .tool-task-context{padding-top:0;margin-bottom:24px}
  .tool-task-context>.eyebrow{font-size:10px;letter-spacing:.06em;margin-bottom:8px}
  .tool-task-context h1{font-size:28px;line-height:1.15;letter-spacing:-.03em;margin:0 0 9px}
  .tool-task-context h1 br{display:none}
  .tool-task-context>p{font-size:13px;line-height:1.5;max-width:none}
  .tool-task .tool-step-rail,.tool-task-photo,.tool-task-context .tool-task-caption{display:none}
  .tool-task .tool-question-panel{min-height:0;padding:24px 20px;border-radius:24px}
  .tool-task .tool-progress{margin-bottom:25px;gap:20px}
  .tool-question legend{font-size:28px;line-height:1.15}
  .tool-question>p{font-size:13px;margin:14px 0 21px}
  .tool-option-grid{gap:9px}
  .tool-option input+span{font-size:14px;min-height:58px;padding:12px 14px;gap:10px}
  .tool-option-grid-balance input+span{font-size:13px;padding:12px 10px;gap:5px}
  .tool-option-grid-balance i{width:19px;height:19px}
  .tool-task .tool-flow-controls{margin-top:24px;gap:12px}
  .tool-task .tool-flow-controls .pill{font-size:13px;min-height:50px;padding:12px 19px;gap:10px}
  .tool-task .tool-privacy{font-size:10px;line-height:1.6;margin-top:18px}
  .tool-task-foot .tool-caution{font-size:11px}
}
@media(max-width:380px){.tool-task .tool-question-panel{padding:22px 16px}.tool-question legend{font-size:25px}.tool-task .tool-flow-controls{flex-direction:row;align-items:center}.tool-task .tool-flow-controls [data-path-next]{margin-left:auto;width:auto}.tool-task .tool-flow-controls [data-path-back]{align-self:center;font-size:12px}}
@media(prefers-reduced-motion:reduce){.tool-progress-track span,.tool-option input+span,.tool-option i,.tool-step-rail li,.tool-step-rail li>svg{transition:none}}
@media print{.tool-number-previous{display:none!important}.tool-number-visible{opacity:1!important;transform:none!important;filter:none!important}}

.tool-calc-status{margin:-20px 0 24px;padding:12px 14px;border:1px solid #aaa2cc;border-radius:12px;font-size:12px;line-height:1.55;color:#f4f0ff}

/* The tall card (approved 30 Sep 2026). The Pathfinder's question sits in one rounded card; its photo fills the top and
   meets the question on a soft curve made only by the photo box's rounded bottom edge. One photo per question, crossfaded
   (tools.js sets .is-on with the step). Segmented progress, then the question, then answers as cards with an icon and a line
   of explanation; the balance ranges keep two to a row. The intro and its three ticks stay on the left. */
.tool-task{max-width:1120px;grid-template-columns:minmax(0,1fr) minmax(0,460px);gap:clamp(40px,7vw,104px)}
.tool-task-context{padding-top:clamp(28px,9vh,104px)}
.tool-task .tool-step-rail{margin:30px 0 32px}
.tool-task .tool-step-rail li{gap:12px;padding:6px 0;font-size:15px;font-weight:400}
.tool-task .tool-step-rail li>span{width:26px;height:26px;background:transparent;box-shadow:inset 0 0 0 1.5px var(--border);color:#fff;transition:background-color 350ms var(--ease),box-shadow 350ms var(--ease)}
.tool-task .tool-step-rail li>span svg{width:14px;height:14px}
.tool-task .tool-step-rail li>span svg path{stroke-width:2;stroke-dasharray:1 1;stroke-dashoffset:1;transition:stroke-dashoffset 420ms var(--ease)}
.tool-task .tool-step-rail li[aria-current]{color:var(--ink);font-weight:500}
.tool-task .tool-step-rail li[aria-current]>span{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ink),0 0 0 4px #eeedff}
.tool-task .tool-step-rail li[data-complete]{color:var(--ink)}
.tool-task .tool-step-rail li[data-complete]>span{background:var(--ink);box-shadow:none}
.tool-task .tool-step-rail li[data-complete]>span svg path{stroke-dashoffset:0}
.tool-task .tool-card{min-height:0;padding:0;border:0;border-radius:32px;background:#fff;overflow:hidden;box-shadow:0 0 0 1px var(--line),0 30px 70px #1c184f1c}
.tool-card-photos{position:relative;height:210px;overflow:hidden;border-radius:0 0 50% 50%/0 0 46px 46px;background:var(--selected)}
.tool-card-photos .photo{position:absolute;inset:0;height:100%;aspect-ratio:auto;max-height:none;border-radius:0;opacity:0;pointer-events:none;transition:opacity 700ms ease}
.tool-card-photos .photo img{transform:scale(1.06);transition:transform 1400ms var(--ease)}
.tool-card-photos .photo.is-on{opacity:1;pointer-events:auto}
.tool-card-photos .photo.is-on img{transform:none}
.tool-card-body{padding:20px 26px 24px;text-align:center}
.tool-task .tool-card .tool-progress{flex-direction:column;align-items:center;gap:10px;margin:0 0 4px;font-size:12.5px}
/* Three short bars: one fill slides behind a three-segment mask, so tools.js keeps its single scaleX. */
.tool-card .tool-progress-track{flex:none;width:114px;height:5px;border-radius:0;background:var(--line);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='114' height='5'%3E%3Crect width='34' height='5' rx='2.5'/%3E%3Crect x='40' width='34' height='5' rx='2.5'/%3E%3Crect x='80' width='34' height='5' rx='2.5'/%3E%3C/svg%3E") no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='114' height='5'%3E%3Crect width='34' height='5' rx='2.5'/%3E%3Crect x='40' width='34' height='5' rx='2.5'/%3E%3Crect x='80' width='34' height='5' rx='2.5'/%3E%3C/svg%3E") no-repeat}
.tool-card .tool-question legend{font-size:clamp(22px,1.9vw,25px);line-height:1.2;letter-spacing:-.03em;text-align:center;max-width:none}
/* The question's words are split into spans for its entrance; site.css sizes "fieldset legend span" as a small note, so they inherit. */
.tool-question legend [role=heading] span{font:inherit;letter-spacing:inherit;color:inherit}
.tool-card .tool-question>p{font-size:14px;line-height:1.5;margin:6px auto 16px;max-width:36ch}
.tool-card .tool-option-grid{gap:9px;text-align:left}
.tool-card .tool-option input+span{justify-content:flex-start;gap:12px;min-height:0;padding:12px 14px;border-radius:16px;border-color:var(--line);font-size:15px;line-height:1.3}
.tool-card .tool-option-icon{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#eeedff;color:var(--ink);transition:background-color 200ms var(--ease),color 200ms var(--ease)}
.tool-card .tool-option-icon svg{width:18px;height:18px}
.tool-card .tool-option-text{display:grid;gap:1px;flex:1;min-width:0}
.tool-card .tool-option-label{font-weight:500}
.tool-card .tool-option-text small{font-size:12.5px;line-height:1.35;color:var(--muted)}
.tool-card .tool-option i{width:20px;height:20px;margin-left:auto}
.tool-card .tool-option i svg{width:12px;height:12px}
.tool-card .tool-option input:checked+span{background:#fbfaff;border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.tool-card .tool-option input:checked+span .tool-option-icon{background:var(--ink);color:#fff}
.tool-card .tool-option-grid-balance input+span{justify-content:space-between;min-height:50px}
.tool-task .tool-card .tool-flow-controls{margin-top:16px;min-height:0}
.tool-task .tool-card .tool-flow-controls .pill{min-height:46px;padding:10px 20px;font-size:15px;gap:12px}
.tool-card [data-path-back]{font-size:14px;color:var(--muted)}
.tool-task .tool-card .tool-privacy{justify-content:center;max-width:none;margin:12px 0 0;font-size:12px;color:var(--muted)}
.tool-card .tool-error,.tool-card .tool-storage-note{text-align:center}
@media(hover:hover) and (pointer:fine){.tool-card .tool-option input:not(:checked)+span:hover{border-color:var(--border);background:#fff;box-shadow:0 8px 18px #1c184f10}}
@media(max-width:1000px){.tool-task{grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:40px}.tool-task-context{padding-top:48px}}
@media(max-width:900px){.tool-task .tool-card{padding:0}}
@media(max-width:700px){
  .tool-task .tool-card{padding:0;border-radius:28px}
  .tool-card-photos{height:150px;border-radius:0 0 50% 50%/0 0 34px 34px}
  .tool-card-body{padding:16px 16px 20px}
  .tool-card .tool-question legend{font-size:22px}
  .tool-card .tool-question>p{font-size:13px;margin:6px auto 14px}
  .tool-card .tool-option-grid{gap:8px}
  .tool-card .tool-option input+span{padding:11px 12px;gap:10px;font-size:14px}
  .tool-card .tool-option-icon{width:32px;height:32px;border-radius:10px}
  .tool-card .tool-option-grid-balance input+span{font-size:13px;padding:11px 10px;min-height:48px}
  .tool-task .tool-card .tool-flow-controls{margin-top:14px}
  .tool-task .tool-card .tool-flow-controls .pill{min-height:46px;font-size:14px}
  .tool-task .tool-card .tool-privacy{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.tool-card-photos .photo,.tool-card-photos .photo img,.tool-task .tool-step-rail li>span,.tool-task .tool-step-rail li>span svg path,.tool-card .tool-option-icon{transition:none}.tool-card-photos .photo img{transform:none}}

/* The result as the fourth card (D42, 2 Oct 2026). The answers stay ticked on the left; the card holds the small home that
   lights up once, the three bars, one answer, the figures as two halves, this month's prices and one next step. No bar,
   no pins, no tiles; the figures print. */
.tool-result .tool-task{align-items:center;padding-top:clamp(18px,3vw,40px)}
.tool-result .tool-task-context{padding-top:0}
.tool-task .result-answers{margin:clamp(18px,2.4vw,30px) 0 18px;gap:12px}
.tool-task .result-answers li{align-items:center;padding:0}
.result-answer{display:grid;gap:0;line-height:1.3}
/* The rail styles every span in a step as its tick circle; the answer beside the tick is text, so it drops those. */
.tool-task .tool-step-rail li>span.result-answer{place-items:start;width:auto;height:auto;border-radius:0;background:none;box-shadow:none;color:inherit}
.result-answer small{font-size:12.5px;color:var(--muted)}
.result-answer b{font-size:15.5px;font-weight:500;color:var(--ink)}
.tool-card-home{position:relative;height:236px;overflow:hidden;border-radius:0 0 50% 50%/0 0 46px 46px;background:#edeeff}
.tool-card-home img,.tool-card-home video{display:block;width:100%;height:100%;object-fit:contain}
.result-card .tool-card-body{padding:12px clamp(20px,2.6vw,30px) clamp(20px,2.6vw,26px);display:grid;gap:14px;justify-items:center}
.result-head{font-size:clamp(20px,2.2vw,25px);line-height:1.2;letter-spacing:-.025em;font-weight:500;color:var(--ink);text-wrap:balance;margin:0;max-width:22ch}
.result-ends{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:6px}
.result-ends.is-one{grid-template-columns:1fr}
.result-ends>div{background:var(--selected);border-radius:18px;padding:14px 10px 16px;display:grid;gap:1px;justify-items:center}
.result-ends small{font-size:13px;font-weight:500;color:var(--muted)}
.result-ends span{font-size:12.5px;color:var(--muted)}
.result-ends b{font-size:clamp(21px,2.5vw,27px);font-weight:500;letter-spacing:-.02em;line-height:1.2;color:var(--ink);font-variant-numeric:tabular-nums}
.result-ends.is-hypothetical>div{background:transparent;box-shadow:inset 0 0 0 1.5px var(--selected)}
.result-ends.is-hypothetical b{color:#5c5680}
.result-prices,.result-line{margin:0;font-size:14px;line-height:1.55;color:var(--muted);max-width:32em;text-wrap:pretty}
.tool-card .route-line{margin:0;width:100%;text-align:left;font-size:13.5px;line-height:1.5;padding:10px 14px}
.result-actions{width:100%;display:grid;gap:10px;justify-items:center}
.result-actions .pill{width:100%;justify-content:center}
.result-card .agent-line{width:100%;background:var(--soft);border-radius:16px;padding:10px 12px;font-size:13.5px;text-align:left}
.result-card .agent-mark{width:34px;height:34px;border-radius:10px}
.result-card .agent-mark .bm-house{width:15px;height:14px}
.result-foot{display:grid;gap:14px;max-width:760px;margin-top:clamp(10px,2vw,26px)}
.result-foot .tool-caution{margin:0;padding-top:18px}
.tool-how{border-radius:16px;background:var(--soft);padding:0}
.tool-how summary{padding:14px 18px;cursor:pointer;font-weight:600;font-size:14.5px;color:var(--ink);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.tool-how summary::-webkit-details-marker{display:none}
.tool-how summary svg{width:18px;height:18px;flex:none;transition:transform var(--bm-spring-pop-t,.4s) var(--bm-spring-pop,ease)}
.tool-how[open]:not([data-expanding="false"]) summary svg,.tool-how[data-expanding="true"] summary svg{transform:rotate(45deg)}
.tool-how .details-body{padding:0 18px 14px}
.tool-how ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.tool-how li{font-size:14px;line-height:1.5;color:var(--muted);padding-left:16px;position:relative}
.tool-how li:before{content:'';position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--peri)}
.tool-session{margin:0;font-size:12px;line-height:1.6;color:var(--muted)}
@media(max-width:700px){
  .tool-task .result-answers{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 12px}
  .tool-task .result-answers li{display:block;background:var(--soft);border-radius:12px;padding:6px 11px}
  .tool-task .result-answers li>span:first-child,.result-answer small{display:none}
  .result-answer b{font-size:13.5px}
  .tool-card-home{height:170px;border-radius:0 0 50% 50%/0 0 34px 34px}
  .result-card .tool-card-body{padding:12px 16px 18px}
  .result-ends>div{padding:12px 8px}
}
@media(prefers-reduced-motion:reduce){.tool-how summary svg{transition:none}}
