/* Rizqo / the story behind the invoice. All accents derive from shared brand tokens. */
body.funnel-page:has([data-billing-landing]) {
  --f-accent:var(--orange); --f-ink:var(--ink); --f-muted:var(--text);
  --f-line:var(--line); --f-paper:var(--surface); --f-warm:color-mix(in srgb,var(--orange) 8%,white);
  background:var(--paper,#fff); color:var(--ink);
}
html:has([data-billing-landing]) { scroll-padding-top:76px; }
body:has([data-billing-landing]) .f-header-inner>.button { white-space:nowrap; gap:12px; background:var(--ink); border-color:var(--ink); }
body:has([data-billing-landing]) .f-header-inner>.button svg { width:17px; height:17px; flex-shrink:0; }
html:has([data-billing-landing][data-motion="off"]) { scroll-behavior:auto; }
.bf-page {
  --bf-ink:var(--ink); --bf-muted:var(--text); --bf-paper:var(--paper,#fff);
  --bf-line:var(--line); --bf-surface:var(--surface); --bf-blue:var(--blue);
  --bf-purple:var(--purple); --bf-orange:var(--orange); --bf-yellow:var(--yellow);
  --bf-blue-tint:color-mix(in srgb,var(--blue) 9%,white);
  --bf-orange-tint:color-mix(in srgb,var(--orange) 7%,white);
  --bf-purple-tint:color-mix(in srgb,var(--purple) 9%,white);
  --bf-yellow-tint:color-mix(in srgb,var(--yellow) 22%,white);
  --bf-shadow:color-mix(in srgb,var(--ink) 11%,transparent);
  color:var(--ink); line-height:1.5;
}
.bf-page *, .bf-page *::before, .bf-page *::after { box-sizing:border-box; }
.bf-page [hidden] { display:none!important; }
.bf-page [id] { scroll-margin-top:90px; }
.bf-page svg { flex-shrink:0; }
.bf-page a svg, .bf-page button svg { width:19px; height:19px; }
.bf-page :focus-visible { outline:3px solid var(--blue); outline-offset:5px; }
.bf-page .f-container { width:min(1140px,calc(100% - 80px)); }
.bf-page .button { gap:12px; min-height:48px; padding:12px 20px; border-radius:8px; font-size:14px; transition:background .2s,box-shadow .2s; }
.bf-page .button-dark { color:var(--paper,#fff); background:var(--ink); border-color:var(--ink); }
.bf-page .button-dark:hover { background:color-mix(in srgb,var(--ink) 88%,var(--orange)); box-shadow:0 4px 10px var(--bf-shadow); }
.bf-page .button-light { color:var(--ink); background:var(--paper,#fff); border:1px solid var(--line); box-shadow:0 2px 3px color-mix(in srgb,var(--ink) 4%,transparent); }
.bf-page .button-light:hover { background:var(--surface); border-color:color-mix(in srgb,var(--ink) 30%,white); }
.bf-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-top:28px; }
.bf-text-link { display:inline-flex; align-items:center; gap:10px; color:var(--ink); font-size:14px; font-weight:500; text-decoration:underline; text-underline-offset:5px; text-decoration-color:var(--line); }
.bf-text-link:hover { text-decoration-color:var(--ink); }
.bf-eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 21px; color:var(--text); font-size:12px; line-height:1.5; font-weight:500; letter-spacing:.15px; }
.bf-eyebrow::before { content:""; width:7px; height:7px; background:var(--orange); border-radius:2px; }
.bf-heading { max-width:690px; margin-bottom:42px; }
.bf-heading h2,.bj-recognition h2,.bj-after h2,.bf-final h2 { font-weight:500; font-size:clamp(34px,4.1vw,51px); letter-spacing:-1.9px; line-height:1.12; text-wrap:balance; }
.bf-intro { color:var(--text); max-width:620px; font-size:16px; line-height:1.75; margin-top:22px; text-wrap:pretty; }
.bf-assurance { color:var(--text); font-size:12px; margin-top:19px; line-height:1.8; }
.bf-assurance span { display:inline-block; margin-left:12px; padding-left:14px; border-left:1px solid var(--line); }
.bf-proof-note { color:var(--text); font-size:11px; line-height:1.7; margin-top:18px; }
.bf-mini-label { font-size:10px; font-weight:500; letter-spacing:1px; color:var(--text); }
.bf-section { padding-block:96px; }
.bf-section + .bf-section { border-top:1px solid var(--line); }
/* The opening promise and one generous product composition. */
.bj-hero { padding-top:73px; padding-bottom:25px; }
.bj-hero-copy { text-align:center; }
.bj-kicker { display:inline-flex; align-items:center; gap:9px; font-size:12px; color:var(--text); }
.bj-kicker > span { width:25px; height:25px; border-radius:6px; display:grid; place-items:center; background:var(--bf-orange-tint); color:color-mix(in srgb,var(--orange) 58%,var(--ink)); }
.bj-kicker svg { width:15px; height:15px; }
.bj-hero h1 { font-size:clamp(48px,6.1vw,78px); line-height:1.055; letter-spacing:-3.5px; font-weight:500; margin-top:22px; }
.bj-hero-emphasis { position:relative; display:inline-block; z-index:0; }
.bj-hero-emphasis > svg { position:absolute; width:100%; height:15px; bottom:-11px; left:0; overflow:visible; }
.bj-hero-emphasis path { stroke:var(--orange); stroke-width:7; fill:none; stroke-linecap:round; }
.bj-hero-lead { font-size:18px; line-height:1.7; color:var(--text); margin:33px auto 0; }
.bj-hero .bf-actions { justify-content:center; margin-top:27px; }
.bj-hero-visual { width:100%; margin-top:47px; position:relative; }
.bj-hero-visual > .ha-atelier { width:100%; max-width:1080px; margin:0 auto; }
.bj-hero-footer { display:flex; gap:16px; justify-content:center; align-items:center; padding-top:18px; color:var(--text); font-size:11px; }
/* Navigation follows the reader without controlling the scroll. */
.bf-section-nav { position:sticky; z-index:30; top:0; border-block:1px solid var(--line); background:color-mix(in srgb,white 96%,transparent); backdrop-filter:blur(12px); }
.bf-section-nav>.f-container { display:flex; align-items:center; gap:24px; min-height:62px; }
.bf-section-links { display:flex; align-items:center; gap:32px; min-width:0; flex:1; overflow-x:auto; scrollbar-width:none; }
.bf-section-nav a { display:inline-flex; min-height:62px; align-items:center; flex-shrink:0; font-size:12px; color:var(--text); position:relative; }
.bf-section-nav a[aria-current="location"] { color:var(--ink); }
.bf-section-nav a[aria-current="location"]::after { content:""; position:absolute; height:2px; left:0; right:0; bottom:0; background:var(--orange); }
.bf-reading-progress { position:absolute; left:0; right:0; bottom:-1px; height:2px; pointer-events:none; }
.bf-reading-progress i { display:block; width:100%; height:100%; background:var(--orange); transform-origin:left; transform:scaleX(0); }
/* Recognition: human words with three practical questions. */
.bj-recognition { display:grid; grid-template-columns:1.1fr 1fr; gap:90px; padding-block:110px; align-items:center; }
.bj-recognition>div>p:last-child { color:var(--text); font-size:15px; line-height:1.85; margin-top:25px; }
.bj-questions>div { display:flex; gap:20px; align-items:center; padding:24px 0; border-bottom:1px solid var(--line); }
.bj-questions>div:first-child { border-top:1px solid var(--line); }
.bj-question-mark { display:grid; place-items:center; flex-shrink:0; width:46px; height:52px; border-radius:9px 9px 20px 9px; font-size:12px; font-variant-numeric:tabular-nums; color:var(--ink); }
.bj-blue { background:var(--bf-blue-tint); border-bottom:3px solid var(--blue); }
.bj-orange { background:var(--bf-orange-tint); border-bottom:3px solid var(--orange); }
.bj-yellow { background:var(--bf-yellow-tint); border-bottom:3px solid var(--yellow); }
.bj-questions p { color:var(--text); font-size:16px; line-height:1.7; }
.bj-questions strong { font-weight:500; color:var(--ink); }
.bj-questions svg { width:19px; height:19px; color:var(--text); margin-left:auto; }
/* Four chapters, one stable stage. Static originals always exist in reading order. */
.bj-journey { background:var(--surface); padding-block:96px 55px; border-block:1px solid var(--line); --journey-accent:var(--purple); }
.bj-journey[data-active="phase"] { --journey-accent:var(--blue); }
.bj-journey[data-active="time"],.bj-journey[data-active="invoice"] { --journey-accent:var(--orange); }
.bj-centered { margin-inline:auto; text-align:center; }
.bj-centered .bf-eyebrow { justify-content:center; }
.bj-centered .bf-intro { margin-inline:auto; }
.bj-journey-layout { position:relative; }
.bj-step { display:grid; grid-template-columns:.9fr 1.1fr; gap:65px; align-items:center; padding:55px 0; --chapter-accent:var(--purple); }
.bj-step-phase { --chapter-accent:var(--blue); }
.bj-step-time,.bj-step-invoice { --chapter-accent:var(--orange); }
.bj-step-label { display:flex; align-items:center; gap:13px; font-size:12px; color:var(--text); font-weight:500; margin-bottom:24px; }
.bj-step-label>span { display:grid; place-items:center; width:35px; height:35px; border:1px solid color-mix(in srgb,var(--chapter-accent) 25%,white); border-radius:50%; color:var(--ink); background:color-mix(in srgb,var(--chapter-accent) 12%,white); font-variant-numeric:tabular-nums; }
.bj-step-copy h3 { font-size:clamp(30px,3.5vw,44px); font-weight:500; letter-spacing:-1.5px; line-height:1.15; }
.bj-step-copy>p:not(.bj-step-label) { font-size:16px; line-height:1.8; color:var(--text); max-width:390px; margin-top:22px; }
.bj-step-detail { max-width:370px; padding:14px 0 14px 17px; margin:23px 0; border-left:2px solid var(--chapter-accent); color:var(--text); font-size:13px; line-height:1.75; }
.bj-journey-aside { display:none; }
.bj-stage-controls { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; margin-top:21px; }
.bj-stage-controls button { display:flex; align-items:center; justify-content:center; gap:6px; font:inherit; font-size:11px; border:1px solid transparent; background:transparent; color:var(--text); padding:10px 7px; border-radius:6px; cursor:pointer; }
.bj-stage-controls button>span { font-size:10px; }
.bj-stage-controls button:hover { background:var(--paper,#fff); }
.bj-stage-controls button[aria-pressed="true"] { background:var(--paper,#fff); border-color:color-mix(in srgb,var(--journey-accent) 35%,white); color:var(--ink); box-shadow:0 2px 4px color-mix(in srgb,var(--ink) 4%,transparent); }
.bj-stage-progress { height:2px; margin-top:14px; background:var(--line); overflow:hidden; }
.bj-stage-progress i { display:block; width:100%; height:100%; transform-origin:left; background:var(--journey-accent); transition:background .3s; }
.bj-stage-caption { color:var(--text); font-size:10px; text-align:center; margin-top:12px; }
.bj-journey[data-enhanced="true"] .bj-journey-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:65px; align-items:start; }
.bj-journey[data-enhanced="true"] .bj-journey-aside { display:block; position:sticky; top:76px; padding-block:7px; min-width:0; }
.bj-journey[data-enhanced="true"] .bj-step { display:flex; min-height:72vh; padding-block:75px; position:relative; }
.bj-journey[data-enhanced="true"] .bj-step > [data-journey-visual] { 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; clip-path:inset(50%)!important; white-space:nowrap!important; border:0!important; }
.bj-journey[data-enhanced="true"] .bj-step[data-active="true"] .bj-step-label>span { background:color-mix(in srgb,var(--chapter-accent) 16%,white); color:var(--ink); border-color:var(--chapter-accent); }
/* An actual calculation, with stable controls and a clear answer. */
#billing-example { padding-top:105px; }
.bf-sandbox-presets { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-bottom:22px; }
.bf-sandbox-presets>span { margin-right:10px; font-size:12px; color:var(--text); }
.bf-sandbox-presets button { font:inherit; font-size:12px; padding:9px 14px; min-height:40px; border:1px solid var(--line); border-radius:7px; background:white; color:var(--text); cursor:pointer; }
.bf-sandbox-presets button[aria-pressed="true"] { color:var(--ink); background:var(--bf-orange-tint); border-color:var(--orange); }
.bf-sandbox-presets button:hover { border-color:var(--orange); }
.bf-calc { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:70px; padding:46px; border:1px solid var(--line); border-radius:17px; background:var(--surface); }
.bf-calc>* { min-width:0; }
.bf-calc-controls fieldset { border:0; min-width:0; padding:0; margin:0; }
.bf-calc-controls legend { font-size:19px; font-weight:500; letter-spacing:-.5px; margin-bottom:26px; }
.bf-fixed-inputs { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-bottom:30px; }
.bf-fixed-inputs span { display:block; color:var(--text); font-size:11px; }
.bf-fixed-inputs strong { display:block; font-size:30px; font-weight:500; letter-spacing:-1px; margin-top:6px; font-variant-numeric:tabular-nums; }
.bf-calc-controls label { display:flex; justify-content:space-between; font-size:13px; color:var(--text); align-items:center; }
.bf-calc-controls output { font-size:20px; color:var(--ink); font-variant-numeric:tabular-nums; }
.bf-sandbox-meter { display:none; }
.bf-sandbox-meter i { display:block; width:100%; height:100%; transform-origin:left; background:var(--blue); transition:transform .2s; }
.bf-calc-controls input[type="range"] { accent-color:var(--blue); display:block; width:100%; margin:9px 0 0; min-height:28px; cursor:pointer; }
.bf-input-help { font-size:11px; line-height:1.7; color:var(--text); margin-top:7px; }
.bf-input-help+label { margin-top:25px; }
.bf-hours-input { display:flex; gap:12px; align-items:center; margin-top:9px; }
.bf-hours-input input { font:inherit; font-size:16px; width:95px; max-width:45%; padding:10px 12px; border:1px solid var(--line); border-radius:7px; background:white; color:var(--ink); }
.bf-hours-input>span { font-size:13px; color:var(--text); }
.bf-reset { font:inherit; font-size:12px; color:var(--text); text-decoration:underline; text-underline-offset:4px; background:none; border:0; padding:10px 0; margin-top:16px; cursor:pointer; }
.bf-calc-warning { font-size:12px; line-height:1.6; padding:12px; border-left:2px solid var(--orange); background:var(--bf-orange-tint); margin-top:12px; }
.bf-calc-result { position:relative; border:1px solid var(--line); border-radius:10px; padding:30px; background:white; box-shadow:0 15px 32px -23px color-mix(in srgb,var(--ink) 30%,transparent); }
.bf-calc-result::before { content:""; position:absolute; left:25px; right:25px; top:-7px; height:7px; border:1px solid var(--line); border-bottom:0; border-radius:5px 5px 0 0; background:white; }
.bf-calc-result h3 { font-size:24px; font-weight:500; letter-spacing:-.7px; margin:12px 0 22px; }
.bf-ledger-line { display:flex; justify-content:space-between; gap:16px; border-bottom:1px solid var(--line); padding:15px 0; font-size:12px; color:var(--text); }
.bf-ledger-line strong { font-weight:500; color:var(--ink); white-space:nowrap; font-variant-numeric:tabular-nums; }
.bf-subtotal { background:var(--bf-orange-tint); margin-inline:-12px; padding-inline:12px; border-bottom:0; border-radius:5px; }
.bf-calc-total { display:flex; flex-direction:column; gap:8px; padding-top:25px; }
.bf-calc-total span { font-size:12px; color:var(--text); }
.bf-calc-total strong { font-size:44px; line-height:1.2; font-weight:500; letter-spacing:-1.7px; font-variant-numeric:tabular-nums; }
.bf-calculator-link { margin-top:22px; color:var(--text); font-size:12px; }
.bf-calculator-link .bf-text-link { font-size:12px; }
/* The project remains recognizable after the invoice. */
.bj-after { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:80px; }
.bj-after-visual { border:1px solid var(--line); border-radius:14px; padding:33px; background:color-mix(in srgb,var(--yellow) 12%,white); }
.bj-balance-top { display:flex; align-items:center; gap:12px; margin-bottom:36px; }
.bj-overview-icon { display:grid; place-items:center; width:35px; height:35px; border-radius:8px; background:var(--yellow); }
.bj-overview-icon svg { width:19px; height:19px; }
.bj-balance-top>span:nth-child(2) { font-size:13px; font-weight:500; }
.bj-balance-top small { display:block; font-size:10px; color:var(--text); margin-top:3px; font-weight:400; }
.bj-balance-top>b { font-size:9px; font-weight:400; color:var(--text); margin-left:auto; }
.bj-balance-amount { font-size:63px; font-weight:500; letter-spacing:-2px; margin-top:12px; line-height:1.2; }
.bj-balance-amount span { display:block; font-size:13px; font-weight:400; letter-spacing:0; color:var(--text); margin-top:6px; }
.bj-balance-bar { height:12px; background:white; border-radius:4px; margin:28px 0 20px; overflow:hidden; }
.bj-balance-bar i { display:block; height:100%; width:47.619%; background:var(--yellow); border-right:2px solid var(--ink); }
.bj-balance-legend { display:grid; gap:8px; font-size:12px; color:var(--text); }
.bj-balance-legend span { display:flex; align-items:center; gap:7px; }
.bj-balance-legend b { margin-left:auto; font-weight:500; color:var(--ink); }
.bj-after-copy>p:not(.bf-eyebrow) { font-size:15px; line-height:1.85; color:var(--text); margin-top:23px; }
.bj-after-copy>.bf-text-link { margin-top:24px; }
.bj-after-copy .bj-boundary { font-size:12px!important; padding-top:22px; border-top:1px solid var(--line); }
/* Calm, concrete adoption and purchase information. */
.bf-start-section { padding:52px; border:1px solid var(--line); border-radius:16px; background:var(--surface); margin-bottom:10px; }
.bf-onboarding { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; }
.bf-onboarding li { border-top:1px solid var(--line); padding-top:23px; }
.bf-onboarding li>span { font-size:12px; font-variant-numeric:tabular-nums; color:var(--text); display:block; margin-bottom:15px; }
.bf-onboarding h3 { font-size:18px; line-height:1.35; font-weight:500; letter-spacing:-.35px; }
.bf-onboarding p { font-size:13px; line-height:1.8; color:var(--text); margin-top:13px; }
.bf-section-close { display:flex; justify-content:space-between; align-items:center; gap:25px; border-top:1px solid var(--line); padding-top:28px; margin-top:36px; }
.bf-section-close>p { font-size:13px; color:var(--text); }
.bf-pricing { border-top:0!important; }
.bf-price-switch { display:inline-flex; flex-wrap:wrap; padding:4px; gap:4px; background:var(--surface); border:1px solid var(--line); border-radius:8px; margin-bottom:27px; }
.bf-price-switch button { font:inherit; font-size:13px; border:0; padding:9px 14px; border-radius:5px; color:var(--text); background:transparent; cursor:pointer; }
.bf-price-switch button[aria-pressed="true"] { background:white; box-shadow:0 2px 4px var(--bf-shadow); color:var(--ink); }
.bf-price-switch button>span { display:inline-block; margin-left:6px; background:var(--bf-yellow-tint); color:var(--ink); border-radius:3px; padding:3px 5px; font-size:10px; }
.bf-price-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.bf-plan { border:1px solid var(--line); border-radius:12px; padding:30px; }
.bf-plan:nth-child(2) { background:var(--surface); }
.bf-plan h3 { font-size:22px; font-weight:500; margin-top:8px; letter-spacing:-.5px; }
.bf-price { display:flex; align-items:baseline; gap:7px; margin-top:20px; }
.bf-price strong { font-size:49px; font-weight:500; letter-spacing:-2px; font-variant-numeric:tabular-nums; }
.bf-price span { font-size:12px; color:var(--text); }
.bf-price-note { font-size:10px; line-height:1.7; color:var(--text); margin-top:6px; }
.bf-plan-facts { padding:22px 0 0; margin:22px 0 0; border-top:1px solid var(--line); list-style:none; display:grid; gap:11px; }
.bf-plan-facts li { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--text); }
.bf-plan-facts svg { width:14px; height:14px; }
.bf-price-actions { display:flex; justify-content:space-between; gap:25px; align-items:center; margin-top:27px; }
.bf-price-actions .bf-proof-note { margin-top:9px; }
.bf-price-actions .bf-text-link { font-size:12px; }
.bf-questions { display:grid; grid-template-columns:.8fr 1.2fr; gap:65px; }
.bf-questions h2 { font-size:40px; letter-spacing:-1.5px; }
.bf-faq { border-top:1px solid var(--line); }
.bf-faq details { border-bottom:1px solid var(--line); }
.bf-faq summary { display:flex; align-items:center; justify-content:space-between; gap:25px; font-size:14px; font-weight:500; cursor:pointer; list-style:none; padding:23px 0; }
.bf-faq summary::-webkit-details-marker { display:none; }
.bf-faq summary::after { content:"+"; font-size:21px; font-weight:400; flex-shrink:0; }
.bf-faq details[open] summary::after { content:"−"; }
.bf-faq details>p { font-size:13px; line-height:1.85; color:var(--text); padding-bottom:23px; }
.bf-faq details>p a { text-decoration:underline; }
.bf-final { display:grid; grid-template-columns:1.1fr .9fr; gap:80px; align-items:center; }
.bf-final-copy>p:not(.bf-eyebrow):not(.bf-assurance) { font-size:15px; color:var(--text); line-height:1.8; margin-top:24px; max-width:440px; }
.bf-final .bf-actions>.bf-text-link { font-size:12px; }
.bf-demo-agenda { list-style:none; padding:30px; border:1px solid var(--line); background:var(--surface); border-radius:12px; }
.bf-demo-agenda li { display:flex; gap:25px; align-items:center; padding:22px 0; border-bottom:1px solid var(--line); }
.bf-demo-agenda li:last-child { border:0; }
.bf-demo-agenda li>span { font-size:28px; letter-spacing:-1px; font-variant-numeric:tabular-nums; }
.bf-demo-agenda small { display:block; font-size:10px; color:var(--text); letter-spacing:0; }
.bf-demo-agenda h3 { font-size:15px; font-weight:500; letter-spacing:-.25px; }
.bf-demo-agenda p { font-size:12px; color:var(--text); line-height:1.7; margin-top:5px; }
.bf-kit-band { display:flex; justify-content:space-between; align-items:center; gap:25px; border-top:1px solid var(--line); padding:30px 0 50px; }
.bf-kit-band h2 { font-size:16px; font-weight:500; letter-spacing:-.2px; }
.bf-kit-band p { font-size:12px; color:var(--text); margin-top:7px; }
.bf-kit-band .bf-text-link { font-size:12px; }
/* Small screens get the same complete story without a pinned stage. */
@media(max-width:1050px) {
  .bj-recognition,.bj-after,.bf-final { gap:45px; }
  .bj-journey[data-enhanced="true"] .bj-journey-layout { gap:38px; grid-template-columns:.85fr 1.15fr; }
  .bf-calc { gap:30px; padding:32px; }
  .bf-plan { padding:25px; }
  .bf-questions { gap:35px; }
}
@media(max-width:899px) {
  .bf-page .f-container { width:calc(100% - 48px); }
  .bj-hero { padding-top:55px; }
  .bj-hero h1 { font-size:65px; letter-spacing:-2.9px; }
  .bj-recognition { padding-block:75px; gap:35px; }
  .bj-recognition h2 { font-size:38px; }
  .bj-questions p { font-size:14px; }
  .bj-questions>div { gap:14px; }
  .bj-question-mark { width:38px; height:44px; }
  .bj-journey { padding-top:75px; padding-bottom:25px; }
  .bj-step { gap:32px; grid-template-columns:1fr 1fr; }
  .bj-step-copy h3 { font-size:33px; }
  .bj-step-copy>p:not(.bj-step-label) { font-size:14px; }
  .bf-calc { gap:24px; padding:25px; }
  .bf-calc-result { padding:23px; }
  .bf-fixed-inputs strong { font-size:26px; }
  .bj-after { gap:33px; }
  .bj-after-visual { padding:25px; }
  .bj-balance-amount { font-size:50px; }
  .bf-start-section { padding:35px; }
  .bf-onboarding { gap:23px; }
  .bf-questions { grid-template-columns:1fr; gap:5px; }
  .bf-questions .bf-heading { margin-bottom:28px; }
  .bf-final { gap:30px; }
}
@media(max-width:640px) {
  .bf-page .f-container { width:calc(100% - 36px); }
  .bf-page .button { font-size:12px; min-height:45px; padding:11px 15px; }
  .bf-actions { gap:10px; }
  .bj-hero { padding-top:39px; }
  .bj-kicker { font-size:10px; gap:7px; }
  .bj-hero h1 { font-size:46px; letter-spacing:-2px; margin-top:22px; }
  .bj-hero-emphasis>svg { height:10px; bottom:-8px; }
  .bj-hero-lead { font-size:15px; line-height:1.8; margin-top:27px; }
  .bj-hero-lead br { display:none; }
  .bj-hero .bf-actions { margin-top:23px; }
  .bf-assurance { font-size:10px; margin-top:15px; }
  .bj-hero .bf-assurance>span { display:block; padding:0; margin:3px 0 0; border:0; }
  .bj-hero-visual { margin-top:32px; }
  .bj-hero-footer { flex-wrap:wrap; gap:7px; font-size:10px; padding-top:12px; }
  .bf-section-nav>.f-container { gap:12px; width:calc(100% - 36px); min-height:54px; }
  .bf-section-links { gap:22px; }
  .bf-section-nav a { min-height:54px; font-size:11px; }
  .bj-recognition { grid-template-columns:1fr; padding-block:65px; gap:30px; }
  .bj-recognition h2 { font-size:39px; letter-spacing:-1.6px; }
  .bj-recognition h2 br:nth-of-type(1) { display:none; }
  .bj-recognition>div>p:last-child { font-size:14px; margin-top:20px; }
  .bj-recognition>div>p:last-child br { display:none; }
  .bj-questions>div { padding-block:19px; }
  .bj-questions p { font-size:15px; }
  .bf-eyebrow { font-size:11px; margin-bottom:18px; }
  .bf-heading h2,.bj-after h2,.bf-final h2 { font-size:36px; letter-spacing:-1.5px; }
  .bf-intro { font-size:14px; line-height:1.8; margin-top:18px; }
  .bf-intro br { display:none; }
  .bf-heading { margin-bottom:30px; }
  .bj-journey { padding-top:65px; }
  .bj-step { display:flex; flex-direction:column; align-items:stretch; gap:27px; padding-block:35px; }
  .bj-step+.bj-step { border-top:1px solid var(--line); }
  .bj-step-copy h3 { font-size:35px; }
  .bj-step-copy>p:not(.bj-step-label) { font-size:15px; margin-top:17px; }
  .bj-step-label { margin-bottom:18px; }
  .bj-step-detail { margin-block:19px; font-size:12px; }
  .bf-text-link { font-size:13px; }
  .bf-section,#billing-example { padding-block:65px; }
  .bf-sandbox-presets { gap:6px; }
  .bf-sandbox-presets>span { flex-basis:100%; margin-bottom:5px; }
  .bf-sandbox-presets button { padding:8px 10px; font-size:10px; }
  .bf-calc { grid-template-columns:1fr; padding:23px; gap:33px; }
  .bf-calc-result { padding:23px; }
  .bf-calc-total strong { font-size:39px; }
  .bf-calc-controls legend { font-size:18px; }
  .bf-fixed-inputs { margin-bottom:22px; }
  .bf-fixed-inputs strong { font-size:28px; }
  .bf-calculator-link { line-height:2; }
  .bj-after { grid-template-columns:1fr; gap:30px; }
  .bj-after-visual { padding:25px; }
  .bj-after-copy>p:not(.bf-eyebrow) { font-size:14px; margin-top:20px; }
  .bf-start-section { width:calc(100% + 36px); margin-left:-18px; padding:50px 25px; border-radius:0; border-inline:0; }
  .bf-onboarding { grid-template-columns:1fr; gap:22px; }
  .bf-onboarding li { display:grid; grid-template-columns:30px 1fr; gap:12px; }
  .bf-onboarding li>span { margin-top:2px; }
  .bf-onboarding h3 { font-size:18px; }
  .bf-onboarding p { margin-top:9px; }
  .bf-section-close { flex-direction:column; align-items:flex-start; gap:18px; }
  .bf-price-grid { grid-template-columns:1fr; gap:12px; }
  .bf-plan { padding:27px; }
  .bf-price { margin-top:15px; }
  .bf-plan-facts { margin-top:18px; padding-top:19px; }
  .bf-price-actions { flex-direction:column; align-items:flex-start; gap:20px; }
  .bf-questions h2 { font-size:36px; }
  .bf-faq summary { font-size:13px; gap:20px; padding:20px 0; }
  .bf-faq details>p { font-size:13px; }
  .bf-final { grid-template-columns:1fr; gap:30px; }
  .bf-demo-agenda { padding:16px 27px; }
  .bf-kit-band { flex-direction:column; align-items:flex-start; gap:18px; padding-bottom:35px; }
}
@media(max-width:360px) {
  .bj-hero h1 { font-size:39px; letter-spacing:-1.7px; }
  .bj-kicker { font-size:9px; }
  .bj-hero-lead { font-size:14px; }
  .bj-hero .bf-actions { gap:7px; }
  .bj-hero .button { padding-inline:11px; font-size:11px; }
  .bf-heading h2,.bj-recognition h2,.bj-after h2,.bf-final h2 { font-size:32px; }
  .bf-calc { padding:17px; }
  .bf-calc-result { padding:19px; }
  .bf-ledger-line { font-size:11px; gap:10px; }
  .bf-fixed-inputs { gap:12px; }
  .bf-fixed-inputs strong { font-size:25px; }
  .bf-price-switch button { padding-inline:10px; font-size:12px; }
}
.bf-page[data-motion="off"] *, .bf-page[data-motion="off"] *::before,.bf-page[data-motion="off"] *::after { animation:none!important; transition:none!important; }
@media(prefers-reduced-motion:reduce) {
  html:has([data-billing-landing]) { scroll-behavior:auto; }
  .bf-page *, .bf-page *::before, .bf-page *::after { animation:none!important; transition:none!important; }
}
@media print {
  .bf-section-nav,.bj-journey-aside,.bf-sandbox-presets,.bf-price-switch { display:none!important; }
  .bj-journey[data-enhanced="true"] .bj-journey-layout { display:block; }
  .bj-journey[data-enhanced="true"] .bj-step { display:grid; min-height:0; padding:20px 0; }
  .bj-journey[data-enhanced="true"] .bj-step>[data-journey-visual] { position:static!important; width:auto!important; height:auto!important; margin:0!important; clip:auto!important; clip-path:none!important; white-space:normal!important; overflow:visible!important; }
  .bf-section { padding-block:25px; }
}
