/* Simule Online unified visual system.
 * Loaded after every optional landing module so the public experience follows
 * one rhythm, surface language and motion vocabulary from hero to footer. */
.so-landing{
  --so-canvas:color-mix(in srgb,var(--so-brand) 5%,#f8faf8);
  --so-surface:#fff;
  --so-surface-soft:color-mix(in srgb,var(--so-brand) 4%,#f8faf8);
  --so-ink:var(--so-brand-ink);
  --so-muted:color-mix(in srgb,var(--so-brand-ink) 64%,#7b8491);
  --so-line:color-mix(in srgb,var(--so-brand-ink) 12%,transparent);
  --so-dark:var(--so-surface-dark);
  --so-dark-soft:var(--so-surface-mid);
  --so-radius-sm:14px;
  --so-radius-md:20px;
  --so-radius-lg:28px;
  --so-shadow-sm:0 12px 30px rgba(10,25,53,.08);
  --so-shadow-md:0 24px 58px rgba(10,25,53,.12);
  background:var(--so-canvas);
  color:var(--so-ink);
}
.so-landing main{background:#fff}
.so-landing .so-kicker{color:var(--so-brand-ink);font-size:10px;font-weight:850;letter-spacing:.18em}
.so-landing .so-section-heading h2,.so-landing .so-process h2,.so-landing .so-simulator h2,.so-landing .so-differentials h2,.so-landing .so-faq h2,.so-providers-public--logos>header h2{color:var(--so-ink)!important;font-size:clamp(40px,4.5vw,64px)!important;line-height:.98!important;letter-spacing:-.065em!important}
.so-landing .so-section-heading p,.so-landing .so-process__top p,.so-landing .so-differentials__copy p,.so-landing .so-faq__head>p{color:var(--so-muted);font-size:16px;line-height:1.65}
.so-landing .so-button,.so-landing .so-submit,.so-landing .so-next{min-height:52px;border-radius:var(--so-radius-sm);box-shadow:none;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.so-landing .so-button:hover,.so-landing .so-submit:hover,.so-landing .so-next:hover{transform:translateY(-3px);box-shadow:var(--so-shadow-sm)}

/* Header and cinematic opening. */
.so-site-header{width:min(100%,1240px);gap:clamp(38px,5vw,72px);padding:30px 34px}
.so-site-header .so-logo{position:relative;top:auto;left:auto;display:flex;flex:0 0 240px;align-items:center;width:240px;height:96px;overflow:visible}
.so-site-header .so-logo img{display:block;width:240px;height:96px;max-width:100%;max-height:100%;object-fit:contain;object-position:left center;transform:none}
.so-site-header nav{flex:0 0 auto;gap:30px;margin-left:auto}.so-site-header nav>a:not(.so-header-cta){position:relative}.so-site-header nav>a:not(.so-header-cta):after{content:"";position:absolute;right:0;bottom:-7px;left:0;height:1px;background:currentColor;transform:scaleX(0);transition:transform .25s ease}.so-site-header nav>a:not(.so-header-cta):hover:after{transform:scaleX(1)}
.so-header-cta{min-height:48px;padding:0 18px;border-radius:999px;background:rgba(255,255,255,.13);box-shadow:none}
.so-hero-premium{min-height:760px;background:var(--so-dark)}
.so-hero-premium__image{background:none!important;animation:none!important}.so-hero-premium__slide{position:absolute;inset:0;display:block;background-position:center;background-size:cover;opacity:0;transform:scale(1.025);animation:so-hero-rotation 9s ease-in-out infinite}.so-hero-premium__slide--1{animation-delay:0s}.so-hero-premium__slide--2{animation-delay:3s}.so-hero-premium__slide--3{animation-delay:6s}.so-hero-premium__shade{background:linear-gradient(90deg,color-mix(in srgb,var(--so-dark) 94%,#000) 0%,color-mix(in srgb,var(--so-dark) 76%,transparent) 45%,rgba(0,0,0,.15) 79%),linear-gradient(0deg,rgba(0,0,0,.54),transparent 48%)}@keyframes so-hero-rotation{0%,4%{opacity:0;transform:scale(1.025)}8%,29%{opacity:1;transform:scale(1.01)}33%,100%{opacity:0;transform:scale(1.025)}}
.so-hero-premium__content{width:min(100%,1240px);padding:0 34px 126px}
.so-hero-premium__content>*{max-width:720px}.so-hero-premium h1{margin:18px 0 22px;font-size:clamp(52px,6.3vw,86px);line-height:.96}.so-hero-premium p{max-width:610px;color:#d4dbea;font-size:18px;line-height:1.65}
.so-hero-actions{gap:30px;margin-top:34px}.so-hero-premium .so-button--light{min-width:174px}.so-text-link{font-weight:750}
.so-hero-premium__trust{right:max(34px,calc((100vw - 1172px)/2));bottom:30px;gap:10px}.so-hero-premium__trust span{padding:8px 12px;border-color:rgba(255,255,255,.18);background:rgba(7,21,47,.5)}

/* Conversion block: a restrained continuation of the hero palette. */
.so-simulator{max-width:none!important;margin:0!important;padding:96px max(40px,calc((100vw - 1172px)/2))!important;border-radius:0!important;background:linear-gradient(135deg,color-mix(in srgb,var(--so-brand) 52%,var(--so-dark)) 0%,var(--so-dark-soft) 100%)!important;box-shadow:none!important}
.so-simulator:before{opacity:.55}.so-simulator .so-kicker{color:var(--so-accent-on-dark)}.so-landing .so-simulator h2{color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.18)}.so-simulator__intro>p{max-width:410px;color:rgba(255,255,255,.84);font-size:16px;line-height:1.65}.so-simulator__proof{margin-top:40px}.so-simulator__proof>span{border-radius:var(--so-radius-sm)}
.so-simulator__panel{padding:34px;border-radius:var(--so-radius-lg);box-shadow:var(--so-shadow-md)}
.so-simulator__steps{margin-bottom:32px}.so-simulation-step h3{font-size:30px}.so-choice-grid button,.so-credit-options button{min-height:52px;border-color:var(--so-line);border-radius:var(--so-radius-sm);background:var(--so-surface);transition:border-color .2s ease,background .2s ease,transform .2s ease}.so-choice-grid button:hover,.so-credit-options button:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--so-brand) 48%,var(--so-line))}

/* Shared editorial sections. */
.so-goals,.so-process{width:100%;max-width:none;margin:0;padding:104px max(34px,calc((100vw - 1172px)/2))}
.so-goals{background:var(--so-surface)}.so-process{background:var(--so-canvas)}
.so-goals--visual .so-section-heading,.so-process__top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.7fr);gap:86px;align-items:end}.so-goals--visual .so-section-heading .so-kicker{grid-column:1/-1;margin:0 0 -58px}.so-goals--visual .so-section-heading h2,.so-process__top h2{max-width:720px}.so-goals--visual .so-section-heading p,.so-process__top p{max-width:390px;margin:0 0 4px}
.so-goals--visual .so-goals__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:50px}.so-goals--visual .so-goal-card{border-radius:var(--so-radius-md);box-shadow:var(--so-shadow-sm);transition:transform .35s ease,box-shadow .35s ease}.so-goals--visual .so-goal-card:hover{transform:translateY(-7px);box-shadow:var(--so-shadow-md)}.so-goals--visual .so-goal-card:before{height:3px}.so-goals--visual .so-goal-card__shade{background:linear-gradient(180deg,transparent 45%,rgba(7,21,47,.08) 60%,rgba(7,21,47,.82) 100%)}.so-goals--visual .so-goal-card__content{padding:24px}.so-goals--visual .so-goal-card strong{font-size:25px}.so-goals--visual .so-goal-card b{width:42px;height:42px;box-shadow:none}

.so-process>.so-kicker{padding:0!important;background:transparent!important;color:var(--so-brand-ink)!important}.so-process__top{margin-top:24px}.so-process ol{gap:24px;margin-top:54px;border:0}.so-process li,.so-process li+li{min-height:230px;padding:28px!important;border:0;border-radius:var(--so-radius-md);background:var(--so-surface);box-shadow:none}.so-process li b{position:static;display:block;width:auto;height:auto;background:transparent;color:var(--so-brand-ink);font-size:11px;letter-spacing:.14em}.so-process li h3{margin:44px 0 10px;font-size:22px}.so-process li p{color:var(--so-muted);font-size:14px;line-height:1.6}.so-process__icon{position:absolute;top:26px;right:26px;width:48px;height:48px;border-radius:50%;background:var(--so-brand-wash);color:var(--so-brand-ink)}

/* Authorized portfolio: same editorial surface, one signature motion. */
.so-providers-public--logos{width:min(calc(100% - 68px),1172px)!important;margin:104px auto!important;padding:72px!important;border-radius:var(--so-radius-lg)!important;background:#fff!important;background-image:none!important;box-shadow:none!important}.so-providers-public--logos>header{max-width:430px!important}.so-providers-public--logos>header p{max-width:420px!important;color:var(--so-muted)!important;font-size:15px!important;line-height:1.65!important}.so-providers-public--logos .so-provider-disclaimer{color:#8490a4!important}.so-providers-public--logos>.so-provider-logo-grid{height:380px!important}

/* Human proof and FAQ reuse the same proportions and material. */
.so-differentials{width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:112px max(34px,calc((100vw - 1172px)/2))!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}.so-differentials:before{display:none!important}.so-differentials__copy{padding:0!important;border:0!important}.so-differentials__copy .so-kicker{margin-bottom:16px}.so-differentials__copy h2{max-width:520px;color:#101712!important}.so-differentials__copy h2::first-line{color:var(--so-brand-ink)}.so-differentials__copy p{max-width:500px;margin-top:24px;color:#303a36!important}.so-gallery{gap:16px}.so-gallery figure,.so-gallery__side figure{border:0!important;border-radius:var(--so-radius-md)!important;box-shadow:none!important}.so-gallery img{border-radius:var(--so-radius-md)}
.so-faq{width:min(calc(100% - 68px),1172px)!important;margin:0 auto 104px!important;padding:72px!important;border:0!important;border-radius:var(--so-radius-lg)!important;background:var(--so-surface)!important;box-shadow:none!important}.so-faq__head{display:grid;grid-template-columns:1.15fr .7fr;gap:80px;align-items:end;margin-bottom:42px}.so-faq__head>p{max-width:360px;margin:0}.so-faq details{padding:21px 0;border-color:var(--so-line)}.so-faq summary{font-size:16px}.so-faq summary span{color:var(--so-brand-ink)}

/* Closing frame mirrors the opening frame. */
.so-footer{background:linear-gradient(135deg,var(--so-dark),var(--so-dark-soft))!important}.so-footer--institutional .so-footer__main{gap:68px;padding-top:92px}.so-footer__identity h2{font-size:clamp(32px,3.2vw,48px);line-height:1}.so-footer__identity>p{font-size:14px}.so-footer__principles article{border-color:rgba(255,255,255,.09)}.so-footer__service{padding:0;border:0;border-radius:0;background:transparent}.so-footer__consultant{border-radius:var(--so-radius-lg)!important}.so-footer--institutional .so-footer__bottom{padding:26px 0 126px!important}

/* A colorful, legible path instead of compressed editorial cards. */
.so-process{background-color:#f7f8f7!important;background-image:radial-gradient(circle at 1px 1px,color-mix(in srgb,var(--so-brand-ink) 11%,transparent) 1px,transparent 0),linear-gradient(135deg,color-mix(in srgb,var(--so-brand) 5%,#fff),#f9faf9 54%,color-mix(in srgb,var(--so-accent) 8%,#fff))!important;background-size:22px 22px,100% 100%!important}.so-process__top{grid-template-columns:minmax(0,1fr) minmax(290px,.64fr)!important;gap:90px!important}.so-process__top h2{color:#101712!important}.so-process__top p{color:#48534d!important}.so-process ol{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;margin-top:52px!important}.so-process li,.so-process li+li{display:grid!important;grid-template-areas:"number icon" "title title" "body body";grid-template-columns:1fr auto;grid-template-rows:auto auto 1fr;min-height:264px!important;padding:30px!important;border:0!important;border-radius:var(--so-radius-md)!important;box-shadow:0 14px 34px rgba(10,25,53,.06)!important;animation:so-process-flow 5.4s cubic-bezier(.45,.05,.25,1) infinite}.so-process li:nth-child(1){background:linear-gradient(145deg,color-mix(in srgb,var(--so-brand) 9%,#fff),#fff)!important;animation-delay:0s}.so-process li:nth-child(2){background:linear-gradient(145deg,color-mix(in srgb,var(--so-accent) 12%,#fff),#fff)!important;animation-delay:.42s}.so-process li:nth-child(3){background:linear-gradient(145deg,color-mix(in srgb,var(--so-secondary) 8%,#fff),#fff)!important;animation-delay:.84s}.so-process li b{grid-area:number!important;align-self:start;color:var(--so-brand-ink)!important}.so-process__icon{position:static!important;grid-area:icon;align-self:start;width:62px!important;height:62px!important;background:var(--so-surface)!important;box-shadow:0 10px 24px color-mix(in srgb,var(--so-brand) 17%,transparent)}.so-process li:nth-child(2) .so-process__icon{color:var(--so-accent-ink);box-shadow:0 10px 24px color-mix(in srgb,var(--so-accent) 26%,transparent)}.so-process li:nth-child(3) .so-process__icon{color:var(--so-secondary);box-shadow:0 10px 24px color-mix(in srgb,var(--so-secondary) 20%,transparent)}.so-process__icon svg{width:30px;height:30px}.so-process li h3{grid-area:title;margin:40px 0 10px!important;color:#121a16;font-size:25px!important;line-height:1.08}.so-process li p{grid-area:body;max-width:28ch;margin:0!important;color:#59645e;font-size:15px!important;line-height:1.6!important}@keyframes so-process-flow{0%,100%{transform:translateY(0);box-shadow:0 14px 34px rgba(10,25,53,.06)}42%{transform:translateY(-10px);box-shadow:0 24px 42px color-mix(in srgb,var(--so-brand) 18%,transparent)}62%{transform:translateY(-4px)}}
.so-whatsapp-float{min-height:52px;border-radius:999px;box-shadow:0 12px 28px rgba(9,94,40,.25)}

@media(max-width:980px){
  .so-goals--visual .so-section-heading,.so-process__top{grid-template-columns:1fr;gap:18px}.so-goals--visual .so-section-heading .so-kicker{grid-column:auto;margin:0}.so-goals--visual .so-goals__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .so-providers-public--logos{grid-template-columns:1fr!important;gap:22px!important;padding:58px!important}.so-providers-public--logos>header{max-width:620px!important}.so-providers-public--logos>.so-provider-logo-grid{height:330px!important}
  .so-differentials{grid-template-columns:1fr!important;gap:42px!important}.so-faq__head{grid-template-columns:1fr;gap:18px}
}
@media(max-width:760px){
  .so-site-header{gap:20px;padding:22px 20px}.so-site-header .so-logo{position:static;flex-basis:160px;width:160px;height:60px;overflow:visible}.so-site-header .so-logo img{width:160px;height:60px;max-width:100%;max-height:100%;object-fit:contain;object-position:left center;transform:none}.so-hero-premium{min-height:690px}.so-hero-premium__content{padding:130px 22px 128px}.so-hero-premium h1{font-size:clamp(46px,13vw,62px)}.so-hero-premium p{font-size:16px}.so-hero-premium__trust{left:22px;right:22px}
  .so-simulator{padding:64px 22px!important}.so-simulator__panel{padding:25px;border-radius:var(--so-radius-md)}
  .so-goals,.so-process{padding:76px 22px}.so-goals--visual .so-goals__grid{display:flex;gap:12px;margin-right:-22px;padding-right:22px}.so-goals--visual .so-goal-card{flex-basis:min(82vw,330px)}
  .so-process ol{grid-template-columns:1fr;gap:12px}.so-process li,.so-process li+li{min-height:190px}.so-process li h3{margin-top:34px}
  .so-providers-public--logos,.so-faq{width:calc(100% - 36px)!important;margin-bottom:76px!important;padding:38px 24px!important;border-radius:var(--so-radius-md)!important}.so-providers-public--logos{margin-top:76px!important}.so-providers-public--logos>.so-provider-logo-grid{height:300px!important}.so-differentials{padding:76px 22px!important}.so-faq__head{margin-bottom:28px}.so-process__top{grid-template-columns:1fr!important;gap:18px!important}.so-process ol{grid-template-columns:1fr!important}.so-process li,.so-process li+li{min-height:0!important}.so-footer--institutional .so-footer__bottom{padding-bottom:176px!important}
}
@media(prefers-reduced-motion:reduce){.so-landing *{scroll-behavior:auto!important}.so-hero-premium__slide,.so-process li{animation:none!important}.so-hero-premium__slide:not(:first-child){display:none!important}.so-hero-premium__slide:first-child{opacity:1!important;transform:none!important}}

/* Conversion narrative: a persuasive editorial pitch beside one continuous guided journey. */
.so-process{padding:104px max(34px,calc((100vw - 1240px)/2))!important;background:#fff!important;background-image:none!important}.so-process__frame{position:relative;display:grid;grid-template-columns:minmax(0,.88fr) minmax(500px,1.12fr);gap:clamp(58px,8vw,118px);overflow:hidden;padding:clamp(54px,6vw,84px);border-radius:34px;background:linear-gradient(135deg,var(--so-surface-dark),color-mix(in srgb,var(--so-surface-dark) 80%,var(--so-brand)));box-shadow:0 34px 80px color-mix(in srgb,var(--so-surface-dark) 20%,transparent);color:#fff}.so-process__frame:before{content:"";position:absolute;inset:-35% auto auto -10%;width:540px;height:540px;border:1px solid rgba(255,255,255,.1);border-radius:50%;box-shadow:0 0 0 90px rgba(255,255,255,.025),0 0 0 180px rgba(255,255,255,.018);pointer-events:none}.so-process__frame:after{content:"";position:absolute;right:-120px;bottom:-190px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--so-brand) 42%,transparent),transparent 68%);filter:blur(6px);pointer-events:none}.so-process__pitch{position:relative;z-index:1;align-self:center}.so-process__pitch .so-kicker{color:var(--so-accent)!important}.so-process__pitch h2{max-width:580px!important;margin:18px 0 24px!important;color:#fff!important;font-size:clamp(42px,4.7vw,68px)!important;line-height:.98!important}.so-process__pitch>p{max-width:540px;margin:0;color:rgba(255,255,255,.74)!important;font-size:17px!important;line-height:1.72!important}.so-process__cta{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:56px;margin-top:34px;padding:0 24px;border-radius:999px;background:#fff;color:var(--so-surface-dark)!important;font-size:14px;font-weight:850;box-shadow:0 14px 32px rgba(0,0,0,.18);transition:transform .25s ease,box-shadow .25s ease}.so-process__cta span{font-size:20px}.so-process__cta:hover{transform:translateY(-3px);box-shadow:0 20px 38px rgba(0,0,0,.24)}.so-process ol{position:relative;z-index:1;display:grid!important;grid-template-columns:1fr!important;gap:0!important;margin:0!important;padding:10px 0!important;border:0!important;counter-reset:none}.so-process ol:before{content:"";position:absolute;top:78px;bottom:78px;left:30px;width:1px;background:linear-gradient(var(--so-accent),rgba(255,255,255,.16),var(--so-accent));opacity:.66}.so-process li,.so-process li+li{position:relative;display:grid!important;grid-template-columns:62px 58px minmax(0,1fr)!important;grid-template-areas:"number icon copy"!important;align-items:center;gap:18px!important;min-height:0!important;padding:28px 0!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.12)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;animation:none!important;transition:transform .28s ease!important}.so-process li:last-child{border-bottom:0!important}.so-process li:hover{transform:translateX(8px)!important}.so-process li:before,.so-process li:after{display:none!important}.so-process li b{position:relative!important;z-index:2;grid-area:number!important;display:grid!important;place-items:center;width:62px!important;height:62px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%!important;background:var(--so-surface-dark)!important;color:var(--so-accent)!important;font-size:11px!important;letter-spacing:.12em!important;box-shadow:0 0 0 8px var(--so-surface-dark)!important}.so-process__icon{position:static!important;grid-area:icon!important;width:50px!important;height:50px!important;border:0!important;border-radius:15px!important;background:rgba(255,255,255,.1)!important;color:#fff!important;box-shadow:none!important}.so-process__icon svg{width:25px!important;height:25px!important}.so-process li>div{grid-area:copy}.so-process li h3{margin:0 0 7px!important;color:#fff!important;font-size:23px!important;line-height:1.16!important;letter-spacing:-.035em!important}.so-process li p{max-width:48ch!important;margin:0!important;color:rgba(255,255,255,.66)!important;font-size:14px!important;line-height:1.62!important}.so-process li:nth-child(2) .so-process__icon,.so-process li:nth-child(3) .so-process__icon{border:0!important;background:rgba(255,255,255,.1)!important;color:#fff!important;box-shadow:none!important}
@media(max-width:980px){.so-process__frame{grid-template-columns:1fr;gap:48px}.so-process__pitch{max-width:680px}.so-process ol{max-width:720px}}
@media(max-width:760px){.so-process{padding:76px 18px!important}.so-process__frame{gap:40px;padding:42px 24px;border-radius:24px}.so-process__pitch h2{font-size:clamp(40px,12vw,56px)!important}.so-process__pitch>p{font-size:15px!important}.so-process__cta{width:100%}.so-process ol:before{left:23px}.so-process li,.so-process li+li{grid-template-columns:48px minmax(0,1fr)!important;grid-template-areas:"number copy" "icon copy"!important;align-items:start;gap:10px 16px!important;padding:24px 0!important}.so-process li b{width:48px!important;height:48px!important}.so-process__icon{width:48px!important;height:44px!important}.so-process li h3{font-size:21px!important}.so-process li p{font-size:13px!important}}
@media(prefers-reduced-motion:reduce){.so-process li,.so-process__cta{transition:none!important}}

/* Color-safe overrides for the dark conversion surface. */
.so-landing .so-process__pitch h2{color:#fff!important}.so-landing .so-process__pitch>p{color:rgba(255,255,255,.76)!important}.so-process li:nth-child(1),.so-process li:nth-child(2),.so-process li:nth-child(3){background:transparent!important}.so-process li:nth-child(2) .so-process__icon,.so-process li:nth-child(3) .so-process__icon{background:rgba(255,255,255,.1)!important;color:#fff!important}.so-process li:nth-child(1) h3,.so-process li:nth-child(2) h3,.so-process li:nth-child(3) h3{color:#fff!important}.so-process li:nth-child(1) p,.so-process li:nth-child(2) p,.so-process li:nth-child(3) p{color:rgba(255,255,255,.66)!important}

/* FAQ as an editorial decision-support surface, not a generic card grid. */
.so-faq{display:grid!important;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr)!important;gap:0!important;overflow:hidden!important;width:min(calc(100% - 68px),1240px)!important;margin:0 auto 112px!important;padding:0!important;border:0!important;border-radius:34px!important;background:#fff!important;box-shadow:0 26px 68px rgba(14,31,24,.1)!important}.so-faq__intro{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:620px;padding:clamp(42px,5vw,68px);overflow:hidden;background:linear-gradient(150deg,var(--so-surface-dark),color-mix(in srgb,var(--so-surface-dark) 78%,var(--so-brand)));color:#fff}.so-faq__intro:before{content:"";position:absolute;top:-122px;left:-140px;width:420px;height:420px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 74px rgba(255,255,255,.03),0 0 0 148px rgba(255,255,255,.018)}.so-faq__intro:after{content:"";position:absolute;right:-115px;bottom:-132px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--so-brand) 48%,transparent),transparent 70%);filter:blur(4px)}.so-faq__intro>*{position:relative;z-index:1}.so-faq__intro .so-kicker{margin-bottom:20px;color:var(--so-accent)!important}.so-landing .so-faq__intro h2{max-width:430px;margin:0!important;color:#fff!important;font-size:clamp(42px,4.5vw,66px)!important;line-height:.98!important}.so-faq__intro p{max-width:390px;margin:23px 0 0;color:rgba(255,255,255,.72)!important;font-size:15px;line-height:1.65}.so-faq__cta{display:inline-flex;align-items:center;justify-content:center;gap:14px;align-self:flex-start;min-height:52px;margin-top:32px;padding:0 21px;border-radius:999px;background:#fff;color:var(--so-surface-dark)!important;font-size:13px;font-weight:850;box-shadow:0 12px 30px rgba(0,0,0,.18);transition:transform .25s ease,box-shadow .25s ease}.so-faq__cta span{font-size:19px}.so-faq__cta:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(0,0,0,.24)}.so-faq__grid{display:grid;align-content:center;gap:10px;padding:clamp(28px,4vw,58px);background:linear-gradient(145deg,#fff,#f8faf8)}.so-faq details{margin:0!important;padding:0!important;border:1px solid color-mix(in srgb,var(--so-brand-ink) 10%,#e6ebe7)!important;border-radius:16px!important;background:#fff;overflow:hidden;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.so-faq details:hover{transform:translateX(-4px);border-color:color-mix(in srgb,var(--so-brand) 32%,#e6ebe7)!important;box-shadow:0 12px 26px color-mix(in srgb,var(--so-brand) 11%,transparent)}.so-faq details[open]{border-color:color-mix(in srgb,var(--so-brand) 40%,#e6ebe7)!important;box-shadow:0 16px 34px color-mix(in srgb,var(--so-brand) 13%,transparent)}.so-faq summary{display:grid!important;grid-template-columns:38px minmax(0,1fr) 42px!important;align-items:center;gap:14px;min-height:78px;padding:16px 18px!important;color:var(--so-ink)!important;list-style:none;font-size:15px!important;font-weight:750!important;cursor:pointer}.so-faq summary::-webkit-details-marker{display:none}.so-faq summary small{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--so-brand-wash);color:var(--so-brand-ink);font-size:10px;font-weight:850;letter-spacing:.1em}.so-faq summary strong{font:inherit;letter-spacing:-.02em}.so-faq summary>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:color-mix(in srgb,var(--so-brand) 10%,#fff);color:var(--so-brand-ink)!important;font-size:24px!important;font-weight:500;line-height:1;transition:transform .25s ease,background .25s ease}.so-faq details[open] summary>span{transform:rotate(45deg);background:var(--so-brand);color:#fff!important}.so-faq details p{max-width:none!important;margin:0 68px 22px 70px!important;color:var(--so-muted)!important;font-size:14px!important;line-height:1.68!important}.so-faq details[open] summary{padding-bottom:10px!important}
@media(max-width:980px){.so-faq{grid-template-columns:1fr!important}.so-faq__intro{min-height:0;padding:56px}.so-faq__grid{padding:40px}.so-faq__intro h2{max-width:620px!important}}
@media(max-width:760px){.so-faq{width:calc(100% - 36px)!important;margin-bottom:76px!important;border-radius:24px!important}.so-faq__intro{padding:42px 25px}.so-faq__grid{padding:18px}.so-landing .so-faq__intro h2{font-size:clamp(40px,12vw,54px)!important}.so-faq summary{grid-template-columns:32px minmax(0,1fr) 36px!important;gap:10px;min-height:72px;padding:14px!important;font-size:14px!important}.so-faq summary small{width:30px;height:30px;font-size:9px}.so-faq summary>span{width:34px;height:34px;font-size:21px!important}.so-faq details p{margin:0 18px 20px 54px!important;font-size:13px!important}.so-faq__cta{width:100%}}

/* A photo-led FAQ and a visual breath between two distinct editorial subjects. */
.so-providers-public--logos{margin-bottom:0!important}.so-providers-public--logos>header .so-kicker,.so-providers-public--logos>header h2,.so-providers-public--logos>header p,.so-providers-public--logos .so-provider-disclaimer{color:#101010!important}.so-section-transition{order:5;position:relative;height:118px;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fbfbfc 46%,#fff 100%)}.so-section-transition:before{content:"";position:absolute;top:50%;left:50%;width:min(74vw,1040px);height:1px;transform:translate(-50%,-50%);background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--so-brand) 12%,#d7d7df) 18%,color-mix(in srgb,var(--so-brand) 28%,#d7d7df) 50%,color-mix(in srgb,var(--so-brand) 12%,#d7d7df) 82%,transparent 100%)}.so-section-transition:after{content:"";position:absolute;top:50%;left:calc(50% - min(37vw,520px));width:120px;height:3px;transform:translateY(-50%);border-radius:999px;background:linear-gradient(90deg,transparent,var(--so-brand),color-mix(in srgb,var(--so-accent) 70%,var(--so-brand)),transparent);filter:blur(.15px);animation:so-transition-glide 3.6s cubic-bezier(.65,0,.35,1) infinite}.so-section-transition i{position:absolute;top:50%;left:50%;width:12px;height:12px;transform:translate(-50%,-50%) rotate(45deg);border:2px solid var(--so-brand);border-radius:3px;background:#fff;box-shadow:0 0 0 7px rgba(255,255,255,.94),0 8px 20px color-mix(in srgb,var(--so-brand) 20%,transparent);animation:so-transition-pulse 3.6s ease-in-out infinite}@keyframes so-transition-glide{0%,12%{opacity:0;transform:translateY(-50%) translateX(0)}22%,72%{opacity:1}88%,100%{opacity:0;transform:translateY(-50%) translateX(min(74vw,1040px))}}@keyframes so-transition-pulse{0%,100%{box-shadow:0 0 0 7px rgba(255,255,255,.94),0 8px 20px color-mix(in srgb,var(--so-brand) 18%,transparent);transform:translate(-50%,-50%) rotate(45deg)}50%{box-shadow:0 0 0 13px rgba(255,255,255,.94),0 10px 28px color-mix(in srgb,var(--so-brand) 28%,transparent);transform:translate(-50%,-50%) rotate(225deg)}}
.so-faq__intro{padding:0!important;background:var(--so-surface-dark)!important;isolation:isolate}.so-faq__image{position:absolute!important;z-index:0!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:68% center!important;filter:saturate(.82) contrast(.96)}.so-faq__intro-overlay{position:absolute!important;z-index:1!important;inset:0!important;background:linear-gradient(90deg,rgba(4,30,20,.96) 0%,rgba(4,30,20,.85) 48%,rgba(4,30,20,.22) 100%),linear-gradient(0deg,rgba(2,19,13,.4),transparent 56%)}.so-faq__intro:before{z-index:2}.so-faq__intro:after{z-index:2}.so-faq__intro-copy{position:relative!important;z-index:3!important;padding:clamp(42px,5vw,68px)!important}.so-faq__intro-copy .so-kicker{display:block}.so-faq__intro-copy h2{position:relative}.so-faq__intro-copy p{position:relative}.so-faq__intro-copy .so-faq__cta{position:relative}.so-faq__grid{gap:14px!important;padding:clamp(28px,4vw,52px)!important;background:linear-gradient(145deg,#fff,#f7faf8)!important}.so-faq summary{grid-template-columns:minmax(0,1fr) 46px!important;gap:18px!important;min-height:86px!important;padding:21px 23px!important;font-size:18px!important;font-weight:800!important;line-height:1.26!important}.so-faq summary strong{font-size:inherit!important}.so-faq summary>span{width:42px!important;height:42px!important;font-size:25px!important}.so-faq details p{margin:0 74px 24px 23px!important;padding-left:16px;border-left:2px solid color-mix(in srgb,var(--so-brand) 42%,transparent);font-size:15px!important;line-height:1.68!important}.so-faq details[open] summary{padding-bottom:12px!important}.so-faq details:hover{transform:translateY(-2px)!important}
@media(max-width:980px){.so-section-transition{height:92px}.so-faq__intro-copy{padding:56px!important}.so-faq__image{object-position:center 68%!important}.so-faq__intro-overlay{background:linear-gradient(90deg,rgba(4,30,20,.9),rgba(4,30,20,.5)),linear-gradient(0deg,rgba(2,19,13,.35),transparent 60%)}}
@media(max-width:760px){.so-section-transition{height:70px}.so-section-transition:after{width:84px}.so-section-transition i{width:10px;height:10px}.so-faq__intro-copy{padding:42px 25px!important}.so-faq__image{object-position:72% center!important}.so-faq__intro-overlay{background:linear-gradient(90deg,rgba(4,30,20,.92),rgba(4,30,20,.5)),linear-gradient(0deg,rgba(2,19,13,.4),transparent 65%)}.so-faq summary{grid-template-columns:minmax(0,1fr) 38px!important;gap:12px!important;min-height:78px!important;padding:18px!important;font-size:16px!important}.so-faq summary>span{width:36px!important;height:36px!important;font-size:22px!important}.so-faq details p{margin:0 18px 21px!important;padding-left:13px;font-size:14px!important}}
@media(prefers-reduced-motion:reduce){.so-section-transition:after,.so-section-transition i{animation:none!important}}

/* Preserve word shapes and word boundaries at large display sizes. */
.so-landing h1,.so-landing h2,.so-landing h3,.so-providers-public--logos>header h2{letter-spacing:-.012em!important;word-spacing:.075em!important;line-height:1.04!important;font-kerning:normal!important;font-variant-ligatures:none!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;text-wrap:balance}

/* 0.41.8 — stabilize the public journey across tablet and phone widths. */
.so-landing{overflow-x:clip}
.so-landing img,.so-landing svg{max-width:100%}
@media(max-width:900px){
  .so-site-header{gap:24px;padding-right:24px;padding-left:24px}
  .so-site-header nav{gap:18px}
  .so-site-header .so-logo{flex:0 1 180px;width:180px}
  .so-hero-premium__content{padding-right:28px;padding-left:28px}
  .so-hero-premium__trust{right:28px;left:28px}
  .so-goals--visual .so-goals__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .so-site-header{gap:14px;padding:16px 20px}
  .so-site-header .so-logo{flex-basis:120px;width:120px;height:52px}
  .so-site-header .so-logo img{width:120px;height:52px}
  .so-site-header nav{margin-left:auto;gap:0}
  .so-site-header nav>a:not(.so-header-cta),.so-site-header nav>a.so-catalog-nav{display:none!important}
  .so-site-header .so-header-cta{min-height:42px;padding:0 14px;font-size:11px}
  .so-hero-premium{min-height:640px}
  .so-hero-premium__content{padding:112px 20px 104px}
  .so-landing .so-hero-premium h1{font-size:clamp(39px,11.2vw,53px);line-height:.96}
  .so-hero-premium p{max-width:34ch;font-size:15px;line-height:1.55}
  .so-hero-actions{gap:18px;margin-top:26px}
  .so-hero-premium__trust{right:20px;bottom:20px;left:20px;gap:7px}
  .so-hero-premium__trust span{padding:6px 9px;font-size:9px}
  .so-goals--visual{padding-top:60px;padding-bottom:64px}
  .so-goals--visual .so-goals__grid{display:flex;grid-template-columns:none;gap:12px;margin-right:-20px;padding:2px 20px 18px 0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  .so-goals--visual .so-goals__grid::-webkit-scrollbar{display:none}
  .so-goals--visual .so-goal-card{flex:0 0 min(78vw,300px);min-width:min(78vw,300px);scroll-snap-align:start}
  .so-providers-public--logos{padding:38px 22px 20px!important}
  .so-providers-public--logos>.so-provider-logo-grid{height:278px!important}
  .so-differentials{padding:58px 22px!important}
  .so-faq{margin-bottom:62px!important}
  .so-footer--institutional .so-footer__bottom{padding-bottom:104px!important}
}
@media(max-width:380px){
  .so-site-header{padding-right:16px;padding-left:16px}
  .so-site-header .so-logo{flex-basis:106px;width:106px}
  .so-site-header .so-logo img{width:106px}
  .so-site-header .so-header-cta{padding-right:11px;padding-left:11px;font-size:10px}
  .so-hero-premium__content{padding-right:18px;padding-left:18px}
  .so-hero-premium__trust{right:18px;left:18px}
}
.so-simulator{grid-template-columns:minmax(460px,.92fr) minmax(0,1.08fr)!important;gap:clamp(54px,6vw,88px)!important}.so-simulator__intro{min-width:0}.so-simulator__intro h2{max-width:620px!important}
@media(max-width:980px){.so-simulator{grid-template-columns:1fr!important}.so-simulator__intro h2{max-width:720px!important}}
