/* "Apply to all of them, then compare" (how-do-people-pay-for-full-arch-implants, #financing): owner-approved and locked 2026-10-28 (Daniel's
   direct approval of the final colour-refined version; Codex soft-pull v002). Site placement of the locked style.css: every rule scoped to
   .dio-soft-pull, the h1/h2 rules restyle the h3/h4, the review shell, private Replay/Still controls (review-only per the handoff), body rules and
   @font-face dropped (fonts.css supplies Nunito Sans). The package's page-width rules become container rules on the figure: its 600px and 350px
   screens with 12px side padding are 576px and 326px figures. The arch band masks the site's own assets/arch-tile.svg (resolved from this
   stylesheet's folder). Values are unchanged. */
.dio-soft-pull{--font:'Avenir Next',Avenir,Nunito Sans,system-ui,sans-serif;--ink:#203846;--steel:#4c7288;font-family:var(--font);color:var(--ink);font-synthesis:none}
.dio-soft-pull *{box-sizing:border-box}
.dio-soft-pull .sp-figure{margin:0;container-type:inline-size}
/* header band: the light arch field from the answer page header, quiet at the reading edge, a little stronger to the right */
.dio-soft-pull .soft-pull-header{position:relative;isolation:isolate;margin:0;padding:22px 28px 20px;background:#e8eff3;border-bottom:1px solid #cad5da}
.dio-soft-pull .header-art{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;
  -webkit-mask-image:url(../../arch-tile.svg),linear-gradient(90deg,rgba(0,0,0,.05),rgba(0,0,0,.10) 40%,rgba(0,0,0,.45) 72%,#000);
  mask-image:url(../../arch-tile.svg),linear-gradient(90deg,rgba(0,0,0,.05),rgba(0,0,0,.10) 40%,rgba(0,0,0,.45) 72%,#000);
  -webkit-mask-size:179.4px 179.4px,100% 100%;mask-size:179.4px 179.4px,100% 100%;-webkit-mask-repeat:repeat,no-repeat;mask-repeat:repeat,no-repeat;
  -webkit-mask-composite:source-in;mask-composite:intersect}
/* resting state is the end frame: steel lines, the orange crest already past */
.dio-soft-pull .header-art>i{position:absolute;inset:0;background:linear-gradient(115deg,rgba(76,114,136,.20) 0%,rgba(76,114,136,.20) 30%,rgba(76,114,136,.34) 40%,rgba(237,135,60,.55) 47%,rgba(76,114,136,.30) 54%,rgba(76,114,136,.20) 64%,rgba(76,114,136,.20) 100%);background-size:300% 100%;background-position:0 0}
.dio-soft-pull .soft-pull.is-playing .header-art>i{animation:soft-pull-wave 4.4s cubic-bezier(.45,.05,.35,1) .2s 1 both}
@keyframes soft-pull-wave{from{background-position:100% 0}to{background-position:0 0}}
.dio-soft-pull .soft-pull{background:#f5f7f7}.dio-soft-pull .soft-pull-header{overflow:hidden}.dio-soft-pull .soft-pull-header h3{position:relative;margin:0;font-size:24px;line-height:1.3;font-weight:600;letter-spacing:-.02em}.dio-soft-pull .comparison{padding:26px 28px 22px}.dio-soft-pull .applicant{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:16px;font-weight:500;line-height:1.4}.dio-soft-pull .applicant img{display:block;width:40px;height:65px}.dio-soft-pull .routes{display:block;width:100%;height:48px;overflow:visible;margin:5px 0 0}.dio-soft-pull .route{vector-effect:non-scaling-stroke}.dio-soft-pull .lenders{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0}.dio-soft-pull .lenders li{background:#fff;border:1px solid #cbd7dd;padding:18px 8px;text-align:center}.dio-soft-pull .lenders h4{font-size:18px;font-weight:600;line-height:1.3;margin:0 0 7px}.dio-soft-pull .lenders p{font-size:15px;font-weight:400;color:var(--steel);line-height:1.4;margin:0}.dio-soft-pull .partner-scope{font-size:13px;font-weight:400;line-height:1.5;text-align:center;color:#536b79;margin:14px 0 0}.dio-soft-pull .explanation{display:grid;grid-template-columns:158px minmax(0,1fr);align-items:center;gap:26px;background:#fff;padding:27px 28px 25px;border-top:1px solid #d4dee3}.dio-soft-pull .score{text-align:center}.dio-soft-pull .dial{width:158px;height:auto;display:block}.dio-soft-pull .score p{font-size:14px;line-height:1.4;font-weight:500;margin:0}.dio-soft-pull .explanation-copy h4{font-size:20px;font-weight:600;line-height:1.4;letter-spacing:-.012em;margin:0 0 12px}.dio-soft-pull .explanation-copy p{font-size:16px;line-height:1.5;font-weight:400;margin:0}.dio-soft-pull .qualification{font-size:13px;line-height:1.55;font-weight:400;color:#536b79;margin:0;padding:17px 28px 20px;border-top:1px solid #dce4e8;background:#fff}.dio-soft-pull figcaption{font-size:12px;line-height:1.5;font-weight:400;text-align:center;color:#536b79;padding:16px 10px 0}
.dio-soft-pull .soft-pull.is-playing .applicant{animation:soft-arrive .7s cubic-bezier(.22,.7,.25,1) .1s both}.dio-soft-pull .soft-pull.is-playing .lenders li{animation:soft-arrive .7s cubic-bezier(.22,.7,.25,1) .5s both}.dio-soft-pull .soft-pull.is-playing .lenders li:nth-child(2){animation-delay:.9s}.dio-soft-pull .soft-pull.is-playing .lenders li:nth-child(3){animation-delay:1.3s}@keyframes soft-arrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-connect{from{stroke-dasharray:1;stroke-dashoffset:1;opacity:0}to{stroke-dasharray:1;stroke-dashoffset:0;opacity:1}}.dio-soft-pull .soft-pull.is-paused *{animation-play-state:paused!important}
@container(max-width:576px){.dio-soft-pull .soft-pull-header h3{font-size:23px}.dio-soft-pull .comparison{padding:24px 20px 20px}.dio-soft-pull .lenders{gap:10px}.dio-soft-pull .lenders li{padding:16px 6px}.dio-soft-pull .lenders h4{font-size:15px}.dio-soft-pull .lenders p{font-size:14px}.dio-soft-pull .explanation{grid-template-columns:1fr;gap:18px;padding:23px 24px 24px}.dio-soft-pull .score{display:flex;flex-direction:column;align-items:center}.dio-soft-pull .dial{width:146px}.dio-soft-pull .explanation-copy h4{font-size:20px}.dio-soft-pull .qualification{padding:16px 24px 19px;font-size:13px}}
@container(max-width:326px){.dio-soft-pull .soft-pull-header{padding-inline:20px}.dio-soft-pull .comparison{padding-inline:16px}.dio-soft-pull .lenders{gap:8px}.dio-soft-pull .lenders h4{font-size:14px}.dio-soft-pull .lenders p{font-size:13px}.dio-soft-pull .lenders li{padding:15px 4px}.dio-soft-pull .explanation,.dio-soft-pull .qualification{padding-inline:20px}}
html.reduce-motion .dio-soft-pull .soft-pull *,html.dio-alive-off .dio-soft-pull .soft-pull *{animation:none!important}.dio-soft-pull .soft-pull:not(.is-playing) .header-art>i{background-position:0 0}
@media(prefers-reduced-motion:reduce){.dio-soft-pull .soft-pull *{animation:none!important}.dio-soft-pull .header-art>i{background-position:0 0!important}}
@media print{.dio-soft-pull .soft-pull *{animation:none!important}}

/* Owner-requested color and application-journey refinement. */
.dio-soft-pull .comparison{background:linear-gradient(155deg,#f2f6f7 10%,#eaf1f4 100%);padding-top:22px}.dio-soft-pull .applicant{gap:5px}.dio-soft-pull .applicant-portrait{display:grid;place-items:center;width:78px;height:78px;background:#fff;border-radius:50%;border:1px solid #d3dfe5;box-shadow:0 3px 12px #20384608}.dio-soft-pull .applicant-portrait img{width:40px;height:65px}.dio-soft-pull .routes{margin-top:3px}.dio-soft-pull .routes>g:first-child{stroke:#668597;stroke-width:1.75}.dio-soft-pull .lenders li{padding:0;overflow:hidden;border:1px solid #bdced7;border-bottom:3px solid #ed873c;background:#fff}.dio-soft-pull .lender-heading{display:flex;flex-direction:column;align-items:center;gap:7px;padding:15px 6px 12px;background:#dce8ee}.dio-soft-pull .lender-icon{width:32px;height:26px;color:#4c7288}.dio-soft-pull .lenders h4{margin:0;color:#203846}.dio-soft-pull .lenders p{padding:12px 6px;color:#35586c;font-weight:500}.dio-soft-pull .explanation{background:#2f4452;border-top:0;color:#fff;padding-top:29px;padding-bottom:29px}.dio-soft-pull .explanation-copy h4{color:#fff}.dio-soft-pull .explanation-copy p{color:#e3ebef}.dio-soft-pull .score p{color:#e3ebef}.dio-soft-pull .prepayment-emphasis{color:#f7ad75;font-weight:500}.dio-soft-pull .qualification{border-top:0;padding-top:18px}.dio-soft-pull .journey{vector-effect:non-scaling-stroke;stroke-dasharray:.08 1;stroke-dashoffset:.08;opacity:0}.dio-soft-pull .soft-pull.is-playing .journey{animation:application-journey .9s cubic-bezier(.3,.7,.2,1) .3s both}.dio-soft-pull .soft-pull.is-playing .journey:nth-child(2){animation-delay:.7s}.dio-soft-pull .soft-pull.is-playing .journey:nth-child(3){animation-delay:1.1s}@keyframes application-journey{0%{stroke-dashoffset:.08;opacity:0}12%{opacity:1}88%{opacity:1}100%{stroke-dashoffset:-1;opacity:0}}
@container(max-width:576px){.dio-soft-pull .lender-heading{gap:6px;padding:13px 5px 11px}.dio-soft-pull .lender-icon{width:27px;height:22px}.dio-soft-pull .lenders li{padding:0}.dio-soft-pull .lenders p{padding:11px 4px}.dio-soft-pull .explanation{padding-top:25px;padding-bottom:25px}}
@container(max-width:326px){.dio-soft-pull .lenders li{padding:0}.dio-soft-pull .lender-heading{padding-inline:3px}.dio-soft-pull .lender-icon{width:25px;height:21px}}
html.reduce-motion .dio-soft-pull .journey,html.dio-alive-off .dio-soft-pull .journey{opacity:0!important}
@media(prefers-reduced-motion:reduce){.dio-soft-pull .journey{opacity:0!important}}
@media print{.dio-soft-pull .journey{opacity:0!important}}

/* site guards: answer-body rules (section.part p/li/h3, .ans-anim figcaption) must not reach in */
.dio-soft-pull h3,.dio-soft-pull h4{font-family:inherit;text-transform:none}
.dio-soft-pull .soft-pull-header h3,.dio-soft-pull .lenders h4{color:#203846}
.dio-soft-pull .lenders>li{list-style:none;margin:0}
.dio-soft-pull figcaption{margin:0;background:none}
/* Replay / Still view controls restored 2026-11-11 (Daniel: animations get pause or replay; GPT 21:37Z).
   Same look as the where-bar and plan-b controls: one row above the figure, right side, wrapping on narrow widths; real buttons at least 44 px
   tall with a visible focus ring; hidden in print. Every rule is scoped to this widget. */
.dio-soft-pull .controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:0 0 12px;padding:0;max-width:none}
.dio-soft-pull .controls[hidden]{display:none}
/* 2026-11-11 audit: the controls take the finish of the site's animation toggle (2px steel border, 6px corners, ink focus ring) so every animation's controls match */
.dio-soft-pull .controls button{font:500 14px/1.2 'Avenir Next',Avenir,'Nunito Sans',system-ui,sans-serif;min-height:44px;min-width:82px;margin:0;padding:10px 16px;background:#fff;color:#203846;border:2px solid #4c7288;border-radius:6px;cursor:pointer}
.dio-soft-pull .controls button:hover{background:#f1f5f6}.dio-soft-pull .controls button:focus-visible{outline:3px solid #203846;outline-offset:2px}.dio-soft-pull .controls button[aria-pressed=true]{background:#e6edf0}.dio-soft-pull .controls button:disabled{opacity:.55;cursor:default}
.dio-soft-pull .sp-status{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media print{.dio-soft-pull .controls{display:none!important}}
