/* SouFR — estilo compartilhado das páginas públicas (fase 2/3). Escopo: .sf */
.sf{--navy:#0b2344;--navy2:#123463;--blue:#034b9c;--orange:#f36c21;--cta1:#d4500d;--cta2:#ea580c;--ink:#14213d;--muted:#4a5470;--line:#e5e9f2;--bg:#f5f7fb;--ok:#15935a;--r:18px;
  font-size:1.125rem;line-height:1.65;color:var(--ink);overflow-wrap:break-word}
.sf *,.sf *:before,.sf *:after{box-sizing:border-box}
.sf h1,.sf h2,.sf h3,.sf h4{color:var(--navy);font-weight:800;line-height:1.2;letter-spacing:-.01em;margin:0 0 .6em}
.sf h1{font-size:clamp(2rem,5vw,3rem)}
.sf h2{font-size:clamp(1.6rem,3.6vw,2.3rem)}
.sf h3{font-size:1.25rem}
.sf h4{font-size:1.1rem}
.sf p{margin:0 0 1em}
.sf a{color:var(--blue)}
.sf img{max-width:100%;height:auto}
.sf-wrap{max-width:1140px;margin:0 auto;padding:0 18px}
.sf-narrow{max-width:820px;margin-left:auto;margin-right:auto}
.sf-center{text-align:center}
.sf-section{padding:64px 0}
.sf-alt{background:var(--bg)}
@media(max-width:700px){.sf-section{padding:48px 0}}
.sf-muted{color:var(--muted)}
.sf-kicker{display:inline-block;font-size:.85rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#c2410c;margin-bottom:.8rem}
.sf-lead{font-size:1.2rem;color:var(--muted)}

/* hero */
.sf-hero{color:#fff;padding:72px 0 64px;background:radial-gradient(900px 460px at 85% -10%,rgba(243,108,33,.28),transparent 60%),radial-gradient(700px 460px at -10% 110%,rgba(3,75,156,.55),transparent 60%),linear-gradient(160deg,#081a35 0%,var(--navy) 50%,#0f2f5e 100%)}
.sf-hero h1,.sf-hero h2,.sf-hero h3{color:#fff}
.sf-hero .sf-kicker{color:#ffb07a}
.sf-hero p{color:#d6deec}
.sf-hero .sf-lead{color:#d6deec;font-size:1.25rem;max-width:44rem}
.sf-hero.sf-center .sf-lead{margin-left:auto;margin-right:auto}
.sf-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
@media(max-width:920px){.sf-hero-grid{grid-template-columns:1fr;gap:28px}}
.sf-glass{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:24px}
.sf-glass h3{color:#fff;font-size:1.15rem}
.sf-glass li{color:#e4e9f3}

/* buttons */
.sf-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.85rem 1.4rem;border-radius:14px;font-weight:800;font-size:1.05rem;line-height:1.25;text-decoration:none;text-align:center;white-space:normal;max-width:100%;border:2px solid transparent;transition:transform .15s,box-shadow .15s,background .15s;cursor:pointer}
.sf-btn:hover{transform:translateY(-2px)}
.sf-btn-cta{background:linear-gradient(135deg,var(--cta1),var(--cta2));color:#fff!important;box-shadow:0 10px 24px rgba(212,80,13,.30)}
.sf-btn-cta:hover{background:linear-gradient(135deg,#c2410c,#d9540f);color:#fff}
.sf-btn-navy{background:var(--navy);color:#fff!important}
.sf-btn-navy:hover{background:var(--navy2)}
.sf-btn-ghost{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.55)}
.sf-btn-ghost:hover{background:rgba(255,255,255,.1)}
.sf-btn-outline{background:#fff;color:var(--navy)!important;border-color:var(--navy)}
.sf-btn-outline:hover{background:var(--navy);color:#fff!important}
.sf-ctas{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:1.4rem}
.sf-center .sf-ctas{justify-content:center}

/* grids & cards */
.sf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:1.8rem}
.sf-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:1.8rem}
@media(max-width:820px){.sf-grid-2{grid-template-columns:1fr}}
.sf-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;box-shadow:0 8px 24px rgba(11,35,68,.05);height:100%}
.sf-card p{color:var(--muted)}
.sf-card p:last-child,.sf-card ul:last-child{margin-bottom:0}
.sf-card.sf-hl{border:2px solid var(--orange)}
.sf-card.sf-dark{background:linear-gradient(160deg,var(--navy),#12407c);border:0;color:#fff}
.sf-card.sf-dark h2,.sf-card.sf-dark h3,.sf-card.sf-dark h4{color:#fff}
.sf-card.sf-dark p,.sf-card.sf-dark li{color:#d8e1f0}
.sf-ic{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:1.5rem;background:rgba(3,75,156,.1);color:var(--blue);margin-bottom:14px}
.sf-ic.o{background:rgba(243,108,33,.13);color:#c2410c}
.sf-ic.g{background:rgba(21,147,90,.13);color:var(--ok)}
.sf-lbl{display:inline-block;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ok);margin-bottom:.4rem}
.sf-card.sf-dark .sf-lbl{color:#ffb07a}
.sf-tag{display:inline-block;font-size:.85rem;font-weight:700;padding:.3rem .7rem;border-radius:999px;background:rgba(3,75,156,.08);color:var(--blue);margin:0 .3rem .4rem 0}

/* lists */
.sf-check{list-style:none;padding:0;margin:0 0 1em}
.sf-check li{position:relative;padding-left:1.8rem;margin-bottom:.55rem}
.sf-check li:before{content:"";position:absolute;left:0;top:.35em;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/70% no-repeat}
.sf-card.sf-dark .sf-check li:before{background-color:#34d399}
.sf-x li:before{background:#c2410c url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='m16 8-8 8M8 8l8 8'/%3E%3C/svg%3E") center/70% no-repeat}

/* callouts & notes */
.sf-callout{border-left:5px solid var(--orange);background:linear-gradient(90deg,rgba(243,108,33,.10),rgba(243,108,33,.02));padding:16px 20px;border-radius:0 14px 14px 0;font-weight:700;color:var(--navy);margin:1.4rem 0 0}
.sf-note{font-size:.9rem;color:var(--muted);margin:.9rem 0 0}
.sf-card.sf-dark .sf-note{color:#c5d1e6}
.sf-box{background:linear-gradient(135deg,#fff7f1,#eef4fc);border:1px solid var(--line);border-radius:var(--r);padding:26px}

/* levels */
.sf-levels{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:1rem 0}
.sf-levels div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 2px;text-align:center;line-height:1.25}
.sf-levels b{display:block;font-size:1.35rem;color:var(--navy)}
.sf-levels span{font-size:.85rem;color:var(--muted)}
.sf-levels small{display:block;font-size:.8rem;color:var(--muted);margin-top:2px}
.sf-card.sf-dark .sf-levels div{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18)}
.sf-card.sf-dark .sf-levels b{color:#fff}
.sf-card.sf-dark .sf-levels span,.sf-card.sf-dark .sf-levels small{color:#c5d1e6}
@media(max-width:380px){.sf-levels{gap:5px}.sf-levels b{font-size:1.15rem}}

/* matriz */
.sf-matrix{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:1.2rem 0}
.sf-matrix div{border-radius:14px;padding:14px 6px;text-align:center;background:#fff;border:1px solid var(--line)}
.sf-matrix b{display:block;font-size:1.3rem;color:var(--navy);line-height:1.2}
.sf-matrix span{font-size:.9rem;color:var(--muted)}
@media(max-width:700px){.sf-matrix{grid-template-columns:1fr}.sf-matrix div{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;text-align:left}.sf-matrix b{order:2}}

/* exemplo de ganho */
.sf-sim{background:#fff;border:2px dashed #f7b58f;border-radius:var(--r);padding:24px;margin-top:1.8rem}
.sf-sim .sf-sim-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:.8rem}
.sf-sim .sf-sim-head h3{margin:0}
.sf-warn{font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:#fff1e8;color:#c2410c;padding:.35rem .7rem;border-radius:999px}
.sf-steps{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px}
.sf-step{flex:1 1 250px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px}
.sf-step .n{width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:800;margin-bottom:10px}
.sf-step .calc{font-weight:800;color:var(--navy);font-size:1.15rem;margin:0 0 .5rem}
.sf-step p{color:var(--muted)}
.sf-total{border-left:5px solid var(--orange);background:linear-gradient(90deg,rgba(243,108,33,.10),transparent);padding:16px 20px;border-radius:0 14px 14px 0;font-weight:800;color:var(--navy);font-size:1.2rem;margin:1.2rem 0 0}
.sf-total span{color:#c2410c;white-space:nowrap}

/* numbered steps */
.sf-num{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--cta1),var(--cta2));color:#fff;display:grid;place-items:center;font-weight:800;font-size:1.15rem;margin-bottom:12px}

/* timeline */
.sf-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:1.8rem}
@media(max-width:760px){.sf-timeline{grid-template-columns:1fr}}
.sf-tl{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;text-align:center}
.sf-tl .yr{display:inline-block;background:var(--navy);color:#fff;font-weight:800;border-radius:999px;padding:.35rem 1rem;margin-bottom:.7rem}
.sf-tl.now .yr{background:linear-gradient(135deg,var(--cta1),var(--cta2))}
.sf-tl b{display:block;color:var(--navy);margin-bottom:.3rem}
.sf-tl p{margin:0;color:var(--muted)}

/* founder */
.sf-founder{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center}
.sf-founder img{width:160px;height:160px;border-radius:50%;object-fit:cover;border:4px solid var(--orange)}
@media(max-width:640px){.sf-founder{grid-template-columns:1fr;text-align:center}.sf-founder img{margin:0 auto}}

/* faq */
.sf-faq details{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:10px;padding:0 18px}
.sf-faq summary{cursor:pointer;list-style:none;display:block;padding:18px 30px 18px 0;font-weight:700;color:var(--navy);position:relative}
.sf-faq summary::-webkit-details-marker{display:none}
.sf-faq summary:after{content:"+";position:absolute;right:0;top:12px;font-size:1.5rem;color:#c2410c;font-weight:800}
.sf-faq details[open] summary:after{content:"–"}
.sf-faq details p{color:var(--muted);padding-bottom:16px;margin:0}

/* final cta */
.sf-final{color:#fff;text-align:center;background:radial-gradient(700px 400px at 50% -20%,rgba(243,108,33,.35),transparent 60%),linear-gradient(160deg,#081a35,var(--navy))}
.sf-final h2{color:#fff}
.sf-final p{color:#d6deec;max-width:40rem;margin-left:auto;margin-right:auto}

/* comparativo de planos */
.sf-compare{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin-top:1.8rem}
.sf-compare th,.sf-compare td{padding:16px 14px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}
.sf-compare thead th{background:var(--navy);color:#fff;font-size:1.05rem}
.sf-compare thead th.hl{background:linear-gradient(135deg,var(--cta1),var(--cta2))}
.sf-compare tbody th{width:22%;color:var(--navy);font-weight:700;background:#fafbfd}
.sf-compare tr:last-child td,.sf-compare tr:last-child th{border-bottom:0}
.sf-compare td .sim{color:var(--ok);font-weight:800}
.sf-compare td .nao{color:#8a93a8;font-weight:700}
.sf-cmp-cards{display:none}
@media(max-width:991.98px){.sf-compare{display:none}.sf-cmp-cards{display:grid;gap:16px;margin-top:1.8rem}}
.sf-cmp-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.sf-cmp-card.hl{border:2px solid var(--orange)}
.sf-cmp-card h3{margin:0;padding:16px 20px;background:var(--navy);color:#fff;font-size:1.2rem}
.sf-cmp-card.hl h3{background:linear-gradient(135deg,var(--cta1),var(--cta2))}
.sf-cmp-card dl{margin:0;padding:6px 20px 16px}
.sf-cmp-card dt{font-weight:700;color:var(--navy);margin-top:12px}
.sf-cmp-card dd{margin:2px 0 0;color:var(--muted)}
.sf-cmp-card dd .sim{color:var(--ok);font-weight:800}
.sf-cmp-card dd .nao{color:#8a93a8;font-weight:700}
.sf-cmp-card .sf-btn{margin:0 20px 20px;width:calc(100% - 40px)}
.sf-mini-levels{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.sf-mini-levels span{display:inline-block;border:1px solid var(--line);background:#f5f7fb;border-radius:10px;padding:4px 8px;font-size:.9rem;color:var(--navy);line-height:1.2;text-align:center}
.sf-mini-levels b{display:block;font-size:1rem}

/* plan cards */
.sf-plan{position:relative;display:flex;flex-direction:column}
.sf-plan .price{font-size:2.4rem;font-weight:800;color:var(--navy);line-height:1.1;margin:.4rem 0 .2rem}
.sf-plan .price small{font-size:1rem;font-weight:600;color:var(--muted)}
.sf-plan .sf-check{flex:1}
.sf-plan .badge-top{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,var(--cta1),var(--cta2));color:#fff;font-weight:800;font-size:.9rem;padding:.35rem 1rem;border-radius:999px;white-space:nowrap}
.sf-status{display:inline-block;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:.3rem .7rem;border-radius:999px;margin:.2rem 0 .8rem}
.sf-status.in{background:#eef0f5;color:#4a5470}
.sf-status.ac{background:rgba(21,147,90,.13);color:#0f7a4a}
