.customer-first-finder-page main { padding-block-start: 100px; }
.cff-shell { min-block-size: 75vh; padding-block: clamp(34px, 6vw, 84px) clamp(80px, 10vw, 140px); background: radial-gradient(circle at 80% 5%, rgba(0,240,255,.08), transparent 28rem), var(--bg); }
.cff-layout { display: grid; gap: clamp(28px,5vw,72px); }
.cff-main { min-inline-size: 0; }
.cff-progress ol { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); padding: 0; margin: 0 0 clamp(42px,7vw,76px); list-style: none; }
.cff-progress li { position: relative; display: grid; gap: 8px; color: var(--ink-muted); font-size: .72rem; }
.cff-progress li::before { content: ''; position: absolute; inset: 15px calc(50% + 20px) auto calc(-50% + 20px); block-size: 1px; background: rgba(255,255,255,.18); }
.cff-progress li:first-child::before { display: none; }
.cff-progress li > span { z-index: 1; display: grid; place-items: center; inline-size: 30px; block-size: 30px; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; background: var(--bg); font-family: var(--font-display); }
.cff-progress .is-current,.cff-progress .is-complete { color: var(--ink); }
.cff-progress .is-current > span,.cff-progress .is-complete > span { border-color: var(--lime); color: #0d0d0d; background: var(--lime); }
.cff-head { max-inline-size: 820px; margin-block-end: 34px; }
.cff-head h1 { margin-block: 14px 18px; font-size: clamp(2.45rem,6vw,5.8rem); letter-spacing: -.045em; line-height: .98; }
.cff-head > p:last-child { max-inline-size: 65ch; color: var(--ink-muted); font-size: clamp(1.02rem,1.6vw,1.25rem); line-height: 1.65; }
.cff-fieldset { padding: 0; border: 0; }
.cff-fieldset + .cff-fieldset { margin-block-start: 34px; }
.cff-fieldset legend { margin-block-end: 16px; font-family: var(--font-display); font-size: 1.05rem; font-weight: 800; }
.cff-options { display: grid; gap: 12px; }
.cff-option { position: relative; display: grid; grid-template-columns: 24px 1fr; gap: 14px; align-items: center; min-block-size: 64px; padding: 17px 18px; border: 1px solid rgba(255,255,255,.18); border-radius: 14px; background: rgba(255,255,255,.045); cursor: pointer; }
.cff-option:hover { border-color: rgba(191,255,0,.55); }
.cff-option input { position: absolute; inline-size: 1px; block-size: 1px; opacity: 0; }
.cff-option > span { display: block; inline-size: 21px; block-size: 21px; border: 2px solid rgba(255,255,255,.48); border-radius: 50%; }
.cff-option:has(input:checked) { border-color: var(--lime); background: rgba(191,255,0,.1); }
.cff-option:has(input:checked) > span { border: 6px solid var(--lime); background: #0d0d0d; }
.cff-option:has(input:focus-visible) { outline: 3px solid var(--lime); outline-offset: 3px; }
.cff-actions { display: flex; flex-wrap: wrap-reverse; gap: 12px; margin-block-start: 32px; }
.cff-summary { align-self: start; padding: 24px; border: 1px solid rgba(255,255,255,.14); border-radius: 18px; background: var(--bg-alt); }
.cff-summary dl { margin: 16px 0; }
.cff-summary dl > div { display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; padding-block: 13px; border-block-end: 1px solid rgba(255,255,255,.1); }
.cff-summary dt { color: var(--ink-muted); font-size: .78rem; }
.cff-summary dd { grid-column: 1; margin: 0; font-weight: 700; line-height: 1.4; }
.cff-summary a { grid-column: 2; grid-row: 1 / span 2; align-self: center; min-block-size: 44px; display: inline-flex; align-items: center; color: var(--lime); font-size: .82rem; }
.cff-summary > p:last-child { color: var(--ink-muted); font-size: .78rem; line-height: 1.55; }
.cff-results { display: grid; gap: 20px; }
.cff-result { padding: clamp(24px,4vw,38px); border: 1px solid rgba(255,255,255,.16); border-radius: 22px; background: var(--card-bg); color: var(--card-text); }
.cff-result.is-recommended { border-color: var(--lime-dark); box-shadow: inset 0 4px 0 var(--lime-dark); }
.cff-result__head { display: flex; justify-content: space-between; gap: 20px; align-items: start; }
.cff-result__head h2 { margin-block: 8px 0; font-size: clamp(1.8rem,3vw,2.8rem); }
.cff-result__head > span { padding: 7px 10px; border-radius: 999px; background: var(--lime-dark); color: #0d0d0d; font-size: .72rem; font-weight: 800; white-space: nowrap; }
.cff-result__lead { color: var(--card-muted); font-size: 1.06rem; line-height: 1.6; }
.cff-result section { margin-block-start: 24px; }
.cff-result h3 { margin-block-end: 10px; font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; }
.cff-result ul { display: grid; gap: 8px; padding-inline-start: 20px; color: var(--card-muted); line-height: 1.5; }
.cff-result__scenario { margin-block-start: 24px; padding: 17px; border-radius: 12px; background: rgba(13,13,13,.06); }
.cff-result__scenario p { margin: 6px 0 0; color: var(--card-muted); line-height: 1.5; }
.cff-result__actions { margin-block-start: 24px; }
.cff-zero,.cff-handoff { padding: clamp(24px,4vw,42px); border: 1px solid rgba(255,255,255,.16); border-radius: 22px; }
.cff-zero p,.cff-handoff p { color: var(--ink-muted); line-height: 1.6; }
.cff-handoff { display: grid; gap: 24px; align-items: center; margin-block-start: 24px; background: linear-gradient(135deg,rgba(191,255,0,.12),rgba(0,240,255,.08)); }
.cff-handoff h2 { margin-block: 8px; font-size: clamp(1.8rem,4vw,3.4rem); }
.cff-result-tools { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; margin-block-start: 22px; }
.cff-result-tools > a { min-block-size: 44px; display: inline-flex; align-items: center; color: var(--ink-muted); }
.cff-resume { margin-block-end: 30px; padding: 18px; border: 1px solid rgba(191,255,0,.4); border-radius: 14px; background: rgba(191,255,0,.08); }
.cff-resume p { margin: 0 0 12px; }
@media (min-width: 780px) { .cff-options { grid-template-columns: repeat(2,minmax(0,1fr)); } .cff-handoff { grid-template-columns: 1fr auto; } }
@media (min-width: 1050px) { .cff-layout { grid-template-columns: minmax(0,1fr) 300px; } .cff-summary { position: sticky; inset-block-start: 126px; } }
@media (max-width: 520px) { .cff-progress li b { display: none; } .cff-progress li { place-items: center; } .cff-progress li::before { inset-inline: calc(-50% + 15px) calc(50% + 15px); } .cff-result__head { display: grid; } .cff-result__head > span { justify-self: start; } .cff-actions .btn { inline-size: 100%; } }
@media (prefers-reduced-motion: reduce) { .cff-page * { scroll-behavior: auto !important; transition-duration: .01ms !important; } }
@media (forced-colors: active) { .cff-option:has(input:checked),.cff-result.is-recommended { border: 3px solid Highlight; } }
