/* Offer layer: founding-client offer (home banner + section, /start banner + consent box + details) and the full /partners page.
   Self-contained: own tokens, so it works on the home page (which does not load dx-tokens.css), /start and the inner pages.
   Purple everywhere; only the wordmark's "x" and "." are mint (same two mints as the header: #0f8f74 on light, #7CE0C3 on dark). */
:root{--of-p:#5646e0;--of-p2:#8b7bff;--of-pl:#a79bff;--of-ink:#0b0c10;--of-txt:#3a3c46;--of-mut:#6c6a66;--of-line:#e8e9ee;--of-soft:#f7f8fa;--of-lav:#f1f0ff;
 --of-ui:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;--of-hf:"Inter Tight","Inter",system-ui,sans-serif;--of-ease:cubic-bezier(.22,1,.36,1);--fbh0:38px}
@media(max-width:700px){:root{--fbh0:48px}}
html.fnd-over .fnd-x{display:none!important}
/* wordmark inside running text */
.wm{font-weight:inherit;letter-spacing:inherit;white-space:nowrap}
.wm i{font-style:normal;color:#0f8f74}
.dk .wm i,.fb .wm i,.po-dark .wm i,.fnd-card .wm i{color:#7CE0C3}

/* ================= banner (home: overlays the top of the hero; /start: in flow above the wizard) ================= */
.fb{position:relative;z-index:55;display:flex;align-items:center;justify-content:center;min-height:var(--fbh0);padding:6px 16px;box-sizing:border-box;text-align:center;
 font:500 13px/1.35 var(--of-ui);letter-spacing:-.003em;color:rgba(255,255,255,.9);
 background:linear-gradient(90deg,rgba(40,28,120,.62),rgba(86,70,224,.5) 50%,rgba(40,28,120,.62)),#0d0b26;
 box-shadow:inset 0 -1px 0 rgba(255,255,255,.1)}
.fb p{margin:0;max-width:1100px}
.fb a{color:#fff;font-weight:600;text-decoration:none;white-space:nowrap;margin-left:6px;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:1px;transition:border-color .2s}
.fb a:hover{border-bottom-color:#fff}
.fb a:focus-visible{outline:2px solid #fff;outline-offset:3px;border-radius:3px}
.fb .m{display:none}
@media(max-width:700px){.fb{font-size:12.5px;padding:6px 12px}.fb .d{display:none}.fb .m{display:inline}}
html.fb-home .fb{position:absolute;top:0;left:0;right:0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
html.fb-home nav#nav{top:var(--fbo,var(--fbh0))}
html.fb-home .hero#top{padding-top:var(--fbh0)}
html.fb-start .fb{box-shadow:inset 0 -1px 0 rgba(255,255,255,.12)}
html.fb-start #app{min-height:calc(100vh - var(--fbh,0px));min-height:calc(100svh - var(--fbh,0px))}
html.fb-start .ob{min-height:calc(100vh - var(--fbh,0px));min-height:calc(100svh - var(--fbh,0px))}
html.fb-start .ob.b{height:calc(100vh - var(--fbh,0px));height:calc(100svh - var(--fbh,0px));min-height:0}
@media(max-width:900px){html.fb-start .ob.b{height:auto;min-height:calc(100svh - var(--fbh,0px))}}
html.fb-start.fb-hide .fb{display:none}

/* ================= home section ================= */
.dk.fnd{padding:36px 0 28px}
.fnd-card{position:relative;border-radius:34px;padding:56px 36px 40px;overflow:hidden;contain:paint;color:#fff;text-align:center;
 background:radial-gradient(circle at 1px 1px,rgba(255,255,255,.06) 1px,transparent 0) 0 0/22px 22px,radial-gradient(60% 70% at 50% 0,rgba(139,123,255,.26),transparent 70%),#0d0f18;box-shadow:inset 0 0 0 1px rgba(255,255,255,.09)}
.fnd-pill{display:inline-flex;align-items:center;gap:8px;font:500 11.5px var(--of-ui);letter-spacing:.1em;text-transform:uppercase;padding:7px 14px;border-radius:99px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);color:#e8eaec;margin:0 0 18px}
.fnd-pill i{width:7px;height:7px;border-radius:50%;background:var(--of-pl);box-shadow:0 0 0 4px rgba(167,155,255,.28)}
.fnd-card h2{font-family:var(--of-hf);font-weight:500;letter-spacing:-.026em;font-size:clamp(28px,3.6vw,44px);line-height:1.08;margin:0 auto;max-width:760px;color:#fff;text-wrap:balance}
.fnd-sub{margin:16px auto 0;max-width:640px;font:400 17px/1.6 var(--of-ui);color:rgba(255,255,255,.7)}
.fnd-sub b{color:#fff;font-weight:600}
.fnd-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:34px auto 0;max-width:960px;text-align:left}
.fnd-c{padding:22px 22px 24px;border-radius:20px;background:rgba(255,255,255,.045);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09)}
.fnd-c b{display:block;font:500 19px/1.25 var(--of-hf);letter-spacing:-.02em;color:#fff}
.fnd-c span{display:block;margin-top:8px;font:400 14.5px/1.55 var(--of-ui);color:rgba(255,255,255,.62)}
.fnd-places{margin:28px auto 0;display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:center;font:400 15.5px/1.4 var(--of-ui);color:rgba(255,255,255,.78)}
.fnd-places b{color:#fff;font-weight:600}
.fnd-left{display:inline-flex;align-items:center;gap:8px;font:600 13px var(--of-ui);padding:7px 13px;border-radius:99px;color:#fff;background:rgba(139,123,255,.28);box-shadow:inset 0 0 0 1px rgba(167,155,255,.4)}
.fnd-date{margin:12px 0 0;font:400 14.5px/1.5 var(--of-ui);color:rgba(255,255,255,.55)}
.fnd-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 24px;margin-top:26px;border-radius:14px;background:#fff;color:#0b0c10;font:600 15px/1 var(--of-ui);text-decoration:none;transition:background .2s,transform .25s var(--of-ease)}
.fnd-cta:hover{background:#efecff;transform:translateY(-1px)}
.fnd-cta:focus-visible{outline:2px solid var(--of-pl);outline-offset:3px}
.fnd-under{margin:14px 0 0;font:400 14px/1.5 var(--of-ui);color:rgba(255,255,255,.6)}
.fnd-faq{margin:44px auto 0;max-width:760px;text-align:left}
.fnd-faq h3{font:500 20px/1.3 var(--of-hf);letter-spacing:-.02em;color:#fff;margin:0 0 10px}
.fnd-faq details{border-top:1px solid rgba(255,255,255,.12);padding:0}
.fnd-faq details:last-child{border-bottom:1px solid rgba(255,255,255,.12)}
.fnd-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 2px;font:500 16.5px/1.4 var(--of-ui);color:#f2f2f7}
.fnd-faq summary::-webkit-details-marker{display:none}
.fnd-faq summary:after{content:"";flex:none;width:8px;height:8px;border-right:1.7px solid var(--of-pl);border-bottom:1.7px solid var(--of-pl);transform:rotate(45deg) translateY(-2px);transition:transform .3s var(--of-ease)}
.fnd-faq details[open] summary:after{transform:rotate(-135deg) translateY(-2px)}
.fnd-faq summary:focus-visible{outline:2px solid var(--of-pl);outline-offset:2px;border-radius:6px}
.fnd-faq details p{margin:0;padding:0 2px 18px;font:400 15px/1.65 var(--of-ui);color:rgba(255,255,255,.68)}
@media(max-width:900px){.fnd-cards{grid-template-columns:1fr;max-width:520px}}
@media(max-width:600px){.fnd{padding:20px 0 14px}.fnd-card{padding:40px 18px 28px;border-radius:28px}.fnd-sub{font-size:16px}.fnd-places{flex-direction:column}}

/* ================= /start: consent box, end-step line, details dialog ================= */
.fnd-box{margin:18px 0 0;padding:16px 16px 14px;border-radius:16px;background:var(--of-lav);box-shadow:inset 0 0 0 1px rgba(86,70,224,.18);color:#1b1b2e}
.fnd-box .t{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0 0 4px}
.fnd-box .t b{font:600 14.5px/1.3 var(--of-ui);color:#1b1b2e}
.fnd-box .t em{font:500 12.5px var(--of-ui);font-style:normal;color:var(--of-p)}
.fnd-box .s{margin:0 0 10px;font:400 13px/1.5 var(--of-ui);color:#4a4a63}
.fnd-box label{display:flex;gap:11px;align-items:flex-start;padding:8px 0;font:400 14px/1.45 var(--of-ui);color:#23233a;cursor:pointer}
.fnd-box input[type=checkbox]{flex:none;width:19px;height:19px;margin:1px 0 0;accent-color:var(--of-p);cursor:pointer}
.fnd-box input[type=checkbox]:focus-visible{outline:2px solid var(--of-p);outline-offset:2px}
.fnd-box .n{margin:6px 0 0;font:400 12.5px/1.5 var(--of-ui);color:#4a4a63}
.fnd-box .n a,.fnd-box .n button{all:unset;cursor:pointer;color:var(--of-p);text-decoration:underline;text-underline-offset:2px}
.fnd-box .n button:focus-visible{outline:2px solid var(--of-p);outline-offset:2px}
.fnd-box .st{margin:8px 0 0;font:600 13px/1.4 var(--of-ui);color:#4a4a63}
.fnd-box.ok{background:#ecfaf4;box-shadow:inset 0 0 0 1px rgba(15,143,116,.3)}
.fnd-box.ok .st{color:#0b6b57}
.fnd-box.ok .t em{color:#0b6b57}
.fnd-end{margin:16px 0 0;padding:12px 14px;border-radius:12px;background:var(--of-lav);box-shadow:inset 0 0 0 1px rgba(86,70,224,.18);font:500 13.5px/1.45 var(--of-ui);color:#23233a}
dialog.fnd-dlg{border:0;padding:0;border-radius:24px;max-width:min(640px,calc(100vw - 24px));width:100%;max-height:min(86vh,760px);overflow:auto;background:#fff;color:#1b1b2e;box-shadow:0 30px 80px rgba(10,8,40,.4);-webkit-overflow-scrolling:touch}
dialog.fnd-dlg::backdrop{background:rgba(8,7,26,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
dialog.fnd-dlg[open]{animation:fndIn .26s var(--of-ease)}
@keyframes fndIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
.fnd-dlg .in{padding:28px 28px 26px}
.fnd-dlg h2{font:500 24px/1.2 var(--of-hf);letter-spacing:-.025em;margin:0 0 6px;color:#0b0c10}
.fnd-dlg .lead{margin:0 0 14px;font:400 14.5px/1.55 var(--of-ui);color:#4a4a63}
.fnd-dlg details{border-top:1px solid var(--of-line)}
.fnd-dlg details:last-of-type{border-bottom:1px solid var(--of-line)}
.fnd-dlg summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 2px;font:500 15px/1.4 var(--of-ui);color:#14142b}
.fnd-dlg summary::-webkit-details-marker{display:none}
.fnd-dlg summary:after{content:"";flex:none;width:7px;height:7px;border-right:1.6px solid var(--of-p);border-bottom:1.6px solid var(--of-p);transform:rotate(45deg) translateY(-2px);transition:transform .3s var(--of-ease)}
.fnd-dlg details[open] summary:after{transform:rotate(-135deg) translateY(-2px)}
.fnd-dlg details p{margin:0;padding:0 2px 15px;font:400 14px/1.65 var(--of-ui);color:#3a3c46}
.fnd-dlg .cl{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;border:0;cursor:pointer;background:#f1f0ff;color:#23233a;font-size:20px;line-height:1;display:grid;place-items:center}
.fnd-dlg .cl:hover{background:#e4e1ff}
.fnd-dlg .go{display:inline-flex;margin-top:16px;height:44px;align-items:center;padding:0 20px;border-radius:12px;background:#0b0c10;color:#fff;font:600 14px var(--of-ui);text-decoration:none}

/* ================= /partners ================= */
.po-eye{display:inline-flex;align-items:center;gap:8px;font:500 12px var(--of-ui);letter-spacing:.1em;text-transform:uppercase;padding:7px 14px;border-radius:99px;background:rgba(255,255,255,.8);box-shadow:inset 0 0 0 1px rgba(11,12,16,.08);color:var(--of-ink);margin:0 0 20px}
.po-eye i{width:7px;height:7px;border-radius:50%;background:var(--of-pl);box-shadow:0 0 0 4px rgba(167,155,255,.3)}
.po-act{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin:28px 0 0}
.po-link{font:500 15px var(--of-ui);color:var(--of-p);text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.po-link:hover{text-decoration:underline;text-underline-offset:3px}
.po-trust{margin:16px 0 0;font:400 14px/1.5 var(--of-ui);color:var(--of-mut)}
.po .w>section{scroll-margin-top:88px}
.po-sec{padding:72px 0 0}
.po-sec h2{font:500 clamp(26px,3.2vw,38px)/1.1 var(--of-hf);letter-spacing:-.026em;color:var(--of-ink);margin:0;max-width:720px;text-wrap:balance}
.po-lead{margin:12px 0 0;max-width:620px;font:400 17px/1.6 var(--of-ui);color:var(--of-mut)}
.po-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:34px 0 0;padding:0;list-style:none}
.po-step{padding:26px 24px 28px;border-radius:22px;background:var(--of-soft);box-shadow:inset 0 0 0 1px var(--of-line)}
.po-step .n{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--of-lav);box-shadow:inset 0 0 0 1px rgba(86,70,224,.2);color:var(--of-p);font:600 14px var(--of-ui);margin:0 0 18px}
.po-step h3{font:500 20px/1.25 var(--of-hf);letter-spacing:-.02em;color:var(--of-ink);margin:0 0 8px}
.po-step p{margin:0;font:400 15px/1.6 var(--of-ui);color:var(--of-mut)}
.po-step code,.po-faq code{font:500 13.5px var(--of-ui);background:#ecebfb;color:#3b2fb8;padding:2px 7px;border-radius:7px;word-break:break-all}
.po-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:34px 0 0}
.po-t{border-radius:22px;background:#fff;box-shadow:inset 0 0 0 1px var(--of-line),0 18px 44px rgba(20,40,90,.06);overflow:hidden}
.po-t table{width:100%;min-width:0;border-collapse:collapse;font-size:15px}
.po-t caption{text-align:left;padding:20px 22px 12px;font:600 13px var(--of-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--of-p)}
.po-t caption small{display:block;margin-top:4px;font:400 12.5px var(--of-ui);letter-spacing:0;text-transform:none;color:var(--of-mut)}
.po-t th{background:none;border-bottom:0;padding:0 22px 8px;text-align:left;font:500 12px var(--of-ui);color:var(--of-mut)}
.po-t th:last-child,.po-t td:last-child{text-align:right}
.po-t td{padding:14px 22px;border-top:1px solid var(--of-line);vertical-align:middle}
.po-t td b{display:block;font:500 16px/1.3 var(--of-hf);letter-spacing:-.015em;color:var(--of-ink)}
.po-t td small{display:block;margin-top:2px;font:400 12.5px var(--of-ui);color:var(--of-mut)}
.po-t td:last-child{font:600 19px var(--of-hf);letter-spacing:-.02em;color:var(--of-p);white-space:nowrap}
.po-call{margin:18px 0 0;padding:26px 28px;border-radius:24px;background:radial-gradient(60% 120% at 12% 0,rgba(167,155,255,.4),transparent 70%),radial-gradient(50% 120% at 95% 20%,rgba(141,182,245,.3),transparent 70%),#0b0c18;color:#fff;font:500 clamp(18px,2vw,22px)/1.45 var(--of-hf);letter-spacing:-.015em}
.po-call b{color:#c9c1ff;font-weight:600;white-space:nowrap}
.po-note{margin:16px 0 0;max-width:860px;font:400 13px/1.65 var(--of-ui);color:var(--of-mut)}
.po-who{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0 0;padding:0;list-style:none}
.po-who li{padding:22px 22px 24px;border-radius:20px;background:var(--of-soft);box-shadow:inset 0 0 0 1px var(--of-line)}
.po-who b{display:block;font:500 18px/1.25 var(--of-hf);letter-spacing:-.018em;color:var(--of-ink);margin:0 0 6px}
.po-who span{font:400 14.5px/1.55 var(--of-ui);color:var(--of-mut)}
.po-line{margin:18px 0 0;font:400 15.5px/1.5 var(--of-ui);color:var(--of-txt)}
.po-line a{color:var(--of-p)}
.po-why{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;margin:28px 0 0;padding:0;list-style:none;max-width:900px}
.po-why li{position:relative;padding-left:30px;font:400 16px/1.55 var(--of-ui);color:var(--of-txt)}
.po-why li:before{content:"";position:absolute;left:0;top:4px;width:18px;height:18px;border-radius:50%;background:var(--of-pl) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M4 7.2l2 2L10 5' fill='none' stroke='%230b0c10' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.po-faq{margin:26px 0 0;max-width:860px}
.po-faq details{border-top:1px solid var(--of-line)}
.po-faq details:last-child{border-bottom:1px solid var(--of-line)}
.po-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:19px 2px;font:500 18px/1.35 var(--of-hf);letter-spacing:-.012em;color:var(--of-ink)}
.po-faq summary::-webkit-details-marker{display:none}
.po-faq summary:after{content:"+";flex:none;font:300 26px/1 var(--of-ui);color:var(--of-p);transition:transform .3s var(--of-ease)}
.po-faq details[open] summary:after{transform:rotate(45deg)}
.po-faq summary:focus-visible{outline:2px solid var(--of-p);outline-offset:2px;border-radius:6px}
.po-faq details p{margin:0;padding:0 2px 20px;max-width:720px;font:400 15.5px/1.65 var(--of-ui);color:var(--of-txt)}
.po .pn-box{margin-top:72px}
.po .pn-box .po-small{margin:18px 0 0;font:400 14px/1.5 var(--of-ui);color:var(--of-mut)}
.po .pn-box .po-small a{color:var(--of-p)}
@media(max-width:1000px){.po-tabs{grid-template-columns:1fr;max-width:520px}.po-who{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.po-steps{grid-template-columns:1fr}.po-why{grid-template-columns:1fr}}
@media(max-width:600px){.po-sec{padding-top:54px}.po-who{grid-template-columns:1fr}.po-call{padding:22px 20px;border-radius:20px}.po-t td,.po-t caption,.po-t th{padding-left:18px;padding-right:18px}.po .pn-box{margin-top:54px}.po-faq summary{font-size:17px}}
@media(prefers-reduced-motion:reduce){dialog.fnd-dlg[open]{animation:none}.fnd-cta,.fb a{transition:none}}
