.sfw{--ink:#14243a;--navy:#0b2239;--muted:#617084;--line:#dce5ef;--brand:#0ea5e9;--brand-dark:#0284c7;--brand-pale:#e0f2fe;--soft:#f2f8fc;max-width:980px;margin:0 auto;padding:42px 16px 80px;color:var(--ink);font-family:Poppins,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
.sfw *{box-sizing:border-box}.sfw-intro{text-align:center;max-width:760px;margin:0 auto 24px}.sfw-kicker{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:var(--brand)}.sfw h1{font-size:clamp(2rem,5vw,3.6rem);line-height:1.04;margin:.35em 0}.sfw-intro p{font-size:1.08rem;color:var(--muted);line-height:1.65}
.sfw-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 22px 65px rgba(15,23,42,.08);overflow:hidden}.sfw-stage-progress{padding:20px 24px 0;background:#fff}.sfw-stage-progress ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;list-style:none;margin:0 0 12px;padding:0}.sfw-stage{display:flex;align-items:center;min-width:0;gap:8px;color:#788493;font-size:.78rem;font-weight:800;line-height:1.2}.sfw-stage-dot{display:inline-flex;flex:0 0 25px;width:25px;height:25px;align-items:center;justify-content:center;border:1px solid #cbd5df;border-radius:50%;background:#fff}.sfw-stage-label{min-width:0}.sfw-stage.active{color:var(--ink)}.sfw-stage.active .sfw-stage-dot,.sfw-stage.complete .sfw-stage-dot{border-color:var(--brand);background:var(--brand);color:#fff}.sfw-progress{height:6px;border-radius:99px;background:#edf1f4;overflow:hidden}.sfw-progress span{display:block;height:100%;background:var(--brand);transition:width .2s ease}.sfw-benefits{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 18px;padding:12px 22px;border-bottom:1px solid var(--line);background:#f8fafc;color:#334155;font-size:.78rem;font-weight:750;line-height:1.35}.sfw-body{padding:clamp(22px,5vw,48px);min-height:480px}
.sfw-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}.sfw-back{border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-weight:800;padding:10px 14px;cursor:pointer}.sfw-step{font-size:.86rem;color:var(--muted);font-weight:800}
.sfw h2{font-size:clamp(1.55rem,4vw,2.35rem);margin:0 0 10px;line-height:1.14}.sfw-lead{color:var(--muted);font-size:1.02rem;line-height:1.55;margin:0 0 24px}.sfw-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.sfw-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.sfw-choice{display:flex;align-items:center;min-height:76px;padding:17px 18px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--ink);text-align:left;font:inherit;font-weight:850;line-height:1.25;cursor:pointer;transition:.15s}.sfw-choice:hover,.sfw-choice:focus{border-color:var(--brand);box-shadow:0 8px 24px rgba(14,165,233,.16);outline:none}.sfw-choice small{display:block;color:var(--muted);font-weight:600;margin-top:4px}
.sfw-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sfw-field{display:block;font-weight:800;color:var(--ink)}.sfw-field.full{grid-column:1/-1}.sfw-field span{display:block;margin:0 0 7px}.sfw input,.sfw select,.sfw textarea{width:100%;border:1px solid #cbd5df;border-radius:12px;background:#fff;color:var(--ink);padding:13px 14px;font:inherit;min-height:50px}.sfw textarea{min-height:130px;resize:vertical}.sfw input:focus,.sfw select:focus,.sfw textarea:focus{outline:3px solid rgba(14,165,233,.22);border-color:var(--brand)}
.sfw-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.sfw-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 21px;border:1px solid var(--brand);border-radius:999px;background:var(--brand);color:#fff;font:inherit;font-weight:900;text-decoration:none;cursor:pointer}.sfw-btn:hover,.sfw-btn:focus{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff}.sfw-btn.secondary{background:#fff;color:var(--brand)}.sfw-btn[disabled]{opacity:.55;cursor:wait}
.sfw-btn.whatsapp{background:#25d366;border-color:#25d366;color:#062b14}.sfw-btn.whatsapp:hover,.sfw-btn.whatsapp:focus{background:#20bd5a;border-color:#20bd5a;color:#062b14}
.sfw-whatsapp-primary{margin-top:18px;margin-bottom:6px}.sfw-whatsapp-primary .sfw-btn{width:100%}
.sfw-education,.sfw-value,.sfw-trust{margin:0 0 24px;padding:16px 18px;border:1px solid #d8e4ed;border-radius:14px;background:#f4f8fb;color:#26394b;line-height:1.5}.sfw-education strong,.sfw-value strong,.sfw-trust strong{display:block;margin-bottom:5px;font-size:1.02rem;color:var(--ink)}.sfw-education p,.sfw-value p,.sfw-trust p{margin:0}.sfw-trust{margin-top:20px;background:#f3f8f5;border-color:#cfe2d5}.sfw-trust p+p{margin-top:8px}.sfw-payment-helper{margin:12px 0 -12px;text-align:center;color:#465667;font-size:.88rem;font-weight:800}.sfw [data-confirm]{text-transform:uppercase}
.sfw-reco{border:2px solid var(--brand);border-radius:18px;padding:24px;background:linear-gradient(145deg,#fff,#f0f9ff)}.sfw-badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:var(--brand);color:#fff;font-size:.74rem;font-weight:950;letter-spacing:.07em}.sfw-plan{font-size:1.7rem;font-weight:950;margin:12px 0 4px}.sfw-price{font-size:2.05rem;font-weight:950;margin:14px 0 4px}.sfw-price small{font-size:.9rem;font-weight:700;color:var(--muted)}.sfw-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.sfw-fact{background:#fff;border:1px solid var(--line);padding:13px;border-radius:12px}.sfw-fact strong{display:block;margin-bottom:3px}.sfw-fact span{color:var(--muted)}
.sfw-summary{display:grid;gap:10px}.sfw-row{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line)}.sfw-row strong{text-align:right}.sfw-row.total{font-size:1.15rem;border-bottom:0}.sfw-note{padding:14px 16px;border-radius:12px;background:#f0f6fb;color:#334155;line-height:1.5}.sfw-error{margin-top:15px;padding:13px 15px;border-radius:11px;background:#fff0f1;color:#9f1220;font-weight:750}.sfw-success{padding:26px;border-radius:18px;background:#eefaf1}.sfw-consent{display:flex;gap:10px;align-items:flex-start;color:var(--muted);line-height:1.45;font-weight:600}.sfw-consent input{width:20px;height:20px;min-height:0;margin-top:2px}.sfw-noscript{padding:22px;background:#fff3cd;border-radius:12px}
@media(max-width:720px){.sfw{width:100%;max-width:100%;padding:24px 12px 60px;overflow-x:hidden}.sfw-stage-progress{padding:16px 14px 0}.sfw-stage-progress ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.sfw-stage{font-size:.74rem}.sfw-benefits{display:grid;grid-template-columns:1fr;gap:5px;padding:11px 16px}.sfw-body{padding:22px 17px;min-height:520px}.sfw-grid,.sfw-grid.three,.sfw-fields,.sfw-facts{grid-template-columns:1fr}.sfw-field.full{grid-column:auto}.sfw-choice{min-height:64px}.sfw-actions{display:grid}.sfw-btn{width:100%}.sfw-row{align-items:flex-start;min-width:0}.sfw-row strong{max-width:62%;overflow-wrap:anywhere}.sfw-price{font-size:1.7rem}.sfw-education,.sfw-value,.sfw-trust{padding:14px 15px}.sfw *{min-width:0}}

/* SF_DESIGN_SYSTEM_V1 (14 Oct 2026): the product finder's tokens and components on the order wizard - navy headings,
   sky accent, lighter weights, the finder's rounded option cards and buttons, visible focus rings. */
.sfw h1,.sfw h2,.sfw-plan,.sfw-price,.sfw-row.total{color:var(--navy);font-weight:600;letter-spacing:-.3px}
.sfw-kicker{color:var(--brand-dark);font-weight:600;letter-spacing:.1em}
.sfw-intro p,.sfw-lead{color:var(--muted)}
.sfw-card{border:0;box-shadow:0 10px 30px rgba(11,34,57,.08)}
.sfw-stage{font-weight:500}.sfw-stage.active{color:var(--navy)}
.sfw-benefits{background:var(--soft);color:var(--navy);font-weight:500}
.sfw-choice{border:1.5px solid var(--line);border-radius:16px;font-weight:500;color:var(--navy)}
.sfw-choice small{font-weight:400}
.sfw-field{font-weight:500;color:var(--navy)}
.sfw input,.sfw select,.sfw textarea{border:1.5px solid var(--line);border-radius:14px}
.sfw-btn{border-radius:12px;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em}
.sfw-btn.secondary,.sfw-back{background:#fff;color:var(--navy);border:1.5px solid var(--line)}
.sfw-btn.secondary:hover,.sfw-btn.secondary:focus{background:var(--soft);color:var(--navy);border-color:var(--brand)}
.sfw-back{font-weight:500}
.sfw-btn:focus-visible,.sfw-choice:focus-visible,.sfw-back:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.sfw-badge{background:var(--brand-pale);color:var(--brand-dark);font-weight:600}
.sfw-plan,.sfw-price{font-weight:600}
.sfw-fact{border-radius:14px}.sfw-fact strong{font-weight:600;color:var(--navy)}
.sfw-note,.sfw-education,.sfw-value{background:var(--soft);border-color:var(--line);color:var(--ink)}
.sfw-education strong,.sfw-value strong,.sfw-trust strong{color:var(--navy);font-weight:600}
.sfw-row strong{font-weight:600;color:var(--navy)}
.sfw-success{background:#ecfdf5;border-radius:22px}
.sfw-payment-helper{color:var(--muted);font-weight:500}

/* SF_ORDER_CONFIRMATION_V1 (14 Oct 2026): numbered "what happens next" steps on the order confirmation. */
.sfw-next-title{margin:26px 0 12px;font-size:1.1rem;font-weight:600;color:var(--navy)}
.sfw-next{list-style:none;counter-reset:sfwnext;margin:0 0 20px;padding:0;display:grid;gap:12px}
.sfw-next li{counter-increment:sfwnext;position:relative;padding:14px 16px 14px 56px;border:1.5px solid var(--line);border-radius:16px;background:#fff;line-height:1.5;color:var(--ink)}
.sfw-next li::before{content:counter(sfwnext);position:absolute;left:16px;top:13px;width:28px;height:28px;border-radius:50%;background:var(--brand-pale);color:var(--brand-dark);font-weight:600;display:flex;align-items:center;justify-content:center}
.sfw-next strong{color:var(--navy);font-weight:600}
.sfw-success p{margin:0 0 10px;line-height:1.55}.sfw-success p:last-child{margin-bottom:0}

/* SF_CONTRAST_V1 (14 Oct 2026): white text on the sky accent (#0ea5e9) is 2.77:1 - below WCAG AA (4.5:1). Primary
   buttons and small accent text use sky-700 #0369a1 (5.93:1 on white), hover #075985; the bright sky stays decorative. */
.sfw{--brand-strong:#0369a1;--brand-strong-hover:#075985}
.sfw-btn{background:var(--brand-strong);border-color:var(--brand-strong);color:#fff}
.sfw-btn:hover,.sfw-btn:focus{background:var(--brand-strong-hover);border-color:var(--brand-strong-hover);color:#fff}
.sfw-btn.secondary{background:#fff;color:var(--navy);border-color:var(--line)}
.sfw-kicker,.sfw-badge,.sfw-next li::before,.sfw a:not(.sfw-btn){color:var(--brand-strong)}
