@font-face{font-family:Manrope;src:url('/assets/fonts/Manrope-Variable.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/assets/fonts/IBMPlexMono-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{
  --solis-navy:#0b1930;--solis-ink:#14231c;--solis-pine:#155e4b;--solis-teal:#19b7ad;
  --solis-aqua:#75ded5;--solis-sky:#66bde5;--solis-blue:#3975d3;--solis-sun:#f6c75b;
  --solis-cream:#f6f2e9;--solis-paper:#fffdf8;--solis-line:#d9d1c2;--solis-muted:#55645e;
  --solis-good:#137a4f;--solis-warn:#8c5a0a;--solis-warn-bg:#fff1cb;--solis-bad:#9b2c1a;
  --shadow-sm:0 8px 28px rgba(11,25,48,.07);--shadow-md:0 24px 70px rgba(11,25,48,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--solis-cream);color:var(--solis-ink);font-family:Manrope,Inter,ui-sans-serif,system-ui,sans-serif;font-size:16px;line-height:1.55}
a{color:var(--solis-pine);text-underline-offset:3px}
button,input,textarea,select{font:inherit}
.brand{display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-weight:800;letter-spacing:-.025em}
.brand-mark{position:relative;width:30px;height:30px;flex:0 0 30px;border:2px solid currentColor;border-radius:50%;display:inline-block}
.brand-mark:before{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--solis-sun);top:9px;left:9px;box-shadow:0 0 0 4px rgba(246,199,91,.22)}
.brand-mark:after{content:"";position:absolute;width:36px;height:13px;border:1.5px solid currentColor;border-radius:50%;left:-5px;top:7px;transform:rotate(-25deg)}
.eyebrow{font:400 12px/1.2 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:12px;padding:13px 19px;text-decoration:none;font-weight:750;background:var(--solis-navy);color:#fff;box-shadow:0 8px 20px rgba(11,25,48,.18);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.button:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(11,25,48,.22)}
.button.alt{background:rgba(255,255,255,.55);color:var(--solis-navy);border-color:rgba(11,25,48,.22);box-shadow:none;backdrop-filter:blur(8px)}
.button:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--solis-sun);outline-offset:3px}

/* Public landing page */
.landing .hero{position:relative;overflow:hidden;background:linear-gradient(125deg,#a6ead9 0%,#70cfe0 45%,#3d7bd7 100%);padding:30px 22px 64px;isolation:isolate}
.landing .hero:before{content:"";position:absolute;inset:0;z-index:-2;background-image:radial-gradient(rgba(11,25,48,.12) 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(100deg,transparent 12%,#000 90%);opacity:.38}
.landing .hero:after{content:"";position:absolute;width:560px;height:560px;border:1px solid rgba(255,255,255,.34);border-radius:50%;right:-145px;bottom:-330px;z-index:-1;box-shadow:0 0 0 70px rgba(255,255,255,.06),0 0 0 150px rgba(255,255,255,.04)}
.landing .wrap{max-width:1080px;margin:auto}
.landing nav{display:flex;align-items:center;gap:20px;font-size:14px;color:var(--solis-navy)}
.landing nav .brand{margin-right:auto;font-size:16px}
.landing nav>a{color:inherit;text-decoration:none;font-weight:700}
.landing .hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:48px;align-items:center;margin-top:64px}
.landing h1{font-size:clamp(44px,6.8vw,76px);line-height:1.01;letter-spacing:-.055em;max-width:760px;margin:14px 0 22px;color:var(--solis-navy)}
.landing .lead{font-size:19px;max-width:670px;color:#263b45;margin:0}
.landing .actions{display:flex;gap:12px;flex-wrap:wrap;margin:27px 0 20px}
.landing .launch{font:500 12px/1.55 'IBM Plex Mono',ui-monospace,monospace;max-width:680px;color:#20374b}
.settlement-orbit{position:relative;min-height:330px;display:grid;place-items:center}
.settlement-orbit .sun{width:142px;height:142px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff4b8,var(--solis-sun) 54%,#eea934);box-shadow:0 26px 80px rgba(11,25,48,.2),0 0 0 22px rgba(255,255,255,.16);display:grid;place-items:center;text-align:center;color:var(--solis-navy);font-weight:800;line-height:1.15}
.settlement-orbit .ring{position:absolute;width:310px;height:170px;border:1px solid rgba(11,25,48,.46);border-radius:50%;transform:rotate(-25deg)}
.settlement-orbit .node{position:absolute;display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:rgba(255,253,248,.92);border:1px solid rgba(11,25,48,.18);box-shadow:var(--shadow-sm);font:700 11px/1.2 'IBM Plex Mono',monospace;text-align:center;color:var(--solis-navy)}
.settlement-orbit .buyer{top:55px;left:20px}.settlement-orbit .seller{right:4px;bottom:55px}.settlement-orbit .proof{right:24px;top:38px;width:64px}.settlement-orbit .usdc{left:40px;bottom:42px}
.landing .section{max-width:1080px;margin:auto;padding:66px 22px}
.landing .section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px}
.landing .section h2{font-size:clamp(29px,4vw,40px);line-height:1.1;letter-spacing:-.035em;margin:0 0 8px}
.landing .sub{color:var(--solis-muted);margin:0;max-width:680px}
.landing .flow,.landing .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.landing .step,.landing .card{position:relative;background:var(--solis-paper);border:1px solid var(--solis-line);border-radius:18px;padding:22px;box-shadow:var(--shadow-sm)}
.landing .step{padding-top:28px;overflow:hidden}
.landing .step:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--solis-teal),var(--solis-blue));transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.landing .step:hover:before{transform:scaleX(1)}
.landing .step b{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--solis-navy);color:white;margin-bottom:17px;font:400 13px/1 'IBM Plex Mono',monospace}
.landing .step h3,.landing .card h3{margin:0 0 8px;font-size:19px;letter-spacing:-.02em}
.landing .step p,.landing .card p{margin:0;color:var(--solis-muted)}
.landing .roles{grid-template-columns:1fr 1fr}.landing .facts{grid-template-columns:repeat(3,1fr)}
.landing .role-card{min-height:190px;display:flex;flex-direction:column}.landing .role-card a{margin-top:auto;font-weight:750}
.landing .role-symbol{font-size:30px;margin-bottom:20px;color:var(--solis-pine)}
.trust-band{background:var(--solis-navy);color:#fff;max-width:none!important;padding:64px max(22px,calc((100vw - 1080px)/2))!important}
.trust-band .section-head{margin-bottom:24px}.trust-band .sub{color:#b9c9d2}.trust-band .card{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16);box-shadow:none}.trust-band .card h3{color:#fff}.trust-band .card p{color:#cbd7dd}
.notice{background:var(--solis-warn-bg);color:#65430d;border-left:4px solid var(--solis-sun);padding:16px 18px;border-radius:12px;margin-bottom:16px}
.landing footer{background:#071222;color:white;padding:38px 22px}.landing footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.landing footer a{color:#bff5e8}

/* Transaction workspace */
.workspace{background:linear-gradient(180deg,#d9f4ed 0,#f6f2e9 245px);min-height:100vh}
.workspace main{max-width:820px;margin:auto;padding:22px 18px 76px}
.workspace .topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:34px}
.workspace .topbar nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.workspace .topbar nav a{font-size:13px;font-weight:700;text-decoration:none}
.workspace .product-head{text-align:center;margin:20px auto 26px}.workspace .product-head .brand{font-size:34px;justify-content:center}.workspace .tagline{margin:7px 0;color:var(--solis-muted)}
.workspace .card,.workspace fieldset{background:var(--solis-paper);border:1px solid var(--solis-line);border-radius:18px;padding:22px;margin:16px 0;box-shadow:var(--shadow-sm)}
.workspace h2{font-size:20px;margin-top:0;letter-spacing:-.02em}
.workspace .status{background:#e5f3ec;color:var(--solis-pine);padding:12px 14px;border-radius:11px}
.workspace .grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.workspace .roles{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.workspace .role{background:var(--solis-paper);color:var(--solis-ink);border:1px solid var(--solis-line);min-height:112px;border-radius:14px;box-shadow:none}
.workspace .role:hover{border-color:var(--solis-teal);transform:translateY(-1px)}
.workspace .role.selected{background:#e6f5ee;border:2px solid var(--solis-pine)}
.workspace label{display:block;color:var(--solis-muted);font-size:13px;margin:12px 0}
.workspace input,.workspace textarea,.workspace select{width:100%;display:block;margin-top:6px;padding:12px;border:1px solid #c8bda8;border-radius:10px;background:#fffefb;color:var(--solis-ink)}
.workspace button{background:var(--solis-pine);color:white;border:0;border-radius:10px;padding:12px 16px;margin:6px 7px 6px 0;font-weight:750;cursor:pointer;transition:transform .18s ease,background .18s ease}
.workspace button:hover:not(:disabled){background:#104d3e;transform:translateY(-1px)}
.workspace button.secondary{background:var(--solis-paper);color:var(--solis-ink);border:1px solid var(--solis-line)}
.workspace button.danger{background:var(--solis-bad)}.workspace button:disabled{opacity:.45;cursor:not-allowed}
.hidden{display:none!important}.check{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #e7dfd0}.pill{border-radius:99px;padding:3px 9px;background:#eee9df}.ok{color:var(--solis-good)}.bad{color:var(--solis-bad)}
.workspace pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#efe9dd;padding:12px;border-radius:9px;font:12px/1.45 'IBM Plex Mono',ui-monospace,monospace}.wide{width:100%}.money{font-size:24px;font-weight:780}.deal-entry{text-align:center;margin:12px 0}.workspace footer{margin-top:26px;color:var(--solis-muted)}

/* Founding offer and legal information */
.content-page main{max-width:780px;margin:auto;padding:34px 20px 62px}
.content-page .page-nav{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:26px}
.content-page .page-nav>a:not(.brand){font-size:13px;font-weight:700;text-decoration:none}
.content-page .page-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(125deg,#a6ead9,#70cfe0 55%,#4a83d5);border-radius:24px;padding:36px;color:var(--solis-navy);box-shadow:var(--shadow-md)}
.content-page .page-hero:after{content:"";position:absolute;z-index:-1;width:310px;height:310px;right:-145px;bottom:-180px;border-radius:50%;border:1px solid rgba(255,255,255,.4);box-shadow:0 0 0 52px rgba(255,255,255,.08)}
.content-page h1{font-size:clamp(38px,7vw,58px);line-height:1.04;letter-spacing:-.045em;max-width:650px;margin:12px 0 18px}
.content-page section{background:var(--solis-paper);border:1px solid var(--solis-line);border-radius:16px;padding:24px;margin:18px 0;box-shadow:var(--shadow-sm)}
.content-page h2{font-size:20px;margin-top:0;letter-spacing:-.02em}
.content-page .page-note{background:#e7f3ed;color:var(--solis-pine);padding:15px 17px;border-radius:12px;margin:20px 0}
.content-page .legal-intro{padding:20px 0 8px}.content-page .legal-intro h1{margin-bottom:12px}

@media(max-width:760px){
  .landing nav{gap:12px}.landing nav a.hide-mobile{display:none}.landing .hero{padding:22px 18px 48px}.landing .hero-grid{grid-template-columns:1fr;margin-top:42px;gap:14px}.landing h1{font-size:44px}.landing .lead{font-size:17px}.settlement-orbit{min-height:270px;transform:scale(.86);margin:-10px 0}.landing .flow,.landing .cards,.landing .roles,.landing .facts{grid-template-columns:1fr}.landing .section{padding:48px 18px}.landing .section-head{display:block}.trust-band{padding:50px 18px!important}.workspace main{padding:15px 12px 54px}.workspace .topbar{align-items:flex-start}.workspace .topbar nav{gap:8px}.workspace .topbar nav a{font-size:12px}.workspace .grid,.workspace .roles{grid-template-columns:1fr}.workspace .role{min-height:84px}
  .content-page main{padding:20px 14px 46px}.content-page .page-hero{padding:26px 21px;border-radius:18px}.content-page .page-nav{align-items:flex-start}.content-page .page-nav>a:not(.brand){font-size:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.step:before,.workspace button{transition:none}}
