/* Findwright theme · site.css · tokens from the Findwright design system. Dark is the default; [data-theme] on <html> switches. */
@font-face{font-family:"Sora";src:url("../fonts/sora-variable.woff2") format("woff2");font-weight:100 800;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url("../fonts/instrument-sans-variable.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Geist Mono";src:url("../fonts/geist-mono-variable.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
:root{--font-display:"Sora",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-body:"Instrument Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
--fs-lg:1.125rem;--fs-md:1rem;--fs-body:.9375rem;--fs-sm:.875rem;--fs-xs:.8125rem;--fs-label:.75rem;--fs-micro:.6875rem;--lh-d1:1.08;--lh-body:1.55;--lh-prose:1.7;
--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--ls-label:.08em;--ls-micro:.06em;
--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;--section-x:clamp(20px,calc(14px + 1.6vw),40px);--container:1200px;
--r-sm:6px;--r-md:8px;--dur-1:120ms;--dur-2:200ms;--ease:cubic-bezier(.2,.7,.2,1)}
:root,[data-theme="dark"]{color-scheme:dark;--bg:#0D0718;--surface:#17131F;--surface-2:#211B2E;--fg:#F5F3FF;--fg2:#CDC4DD;--fg3:#A39AB8;--line:rgba(245,243,255,.12);--line-strong:rgba(245,243,255,.3);--lit:#C6F432;--lit-hover:#D6FA62;--lit-press:#B0DD1C;--on-lit:#0D0718;--brand:#A78BFA;--link:#B9A3FB;--focus:#C6F432;--cell:rgba(245,243,255,.2);--danger:#FF8F87;--success:#6EE7A0;--glass:rgba(13,7,24,.82);--pat-rgb:245,243,255}
[data-theme="light"]{color-scheme:light;--bg:#FAFAF7;--surface:#FFFFFF;--surface-2:#F3F2F7;--fg:#0D0718;--fg2:#3F3A52;--fg3:#5B5670;--line:#E4E2EA;--line-strong:#C3BFD0;--lit:#7C3AED;--lit-hover:#6D28D9;--lit-press:#5B21B6;--on-lit:#FFFFFF;--brand:#7C3AED;--link:#6D28D9;--focus:#7C3AED;--cell:rgba(13,7,24,.14);--danger:#B42318;--success:#157F3C;--glass:rgba(250,250,247,.86);--pat-rgb:13,7,24}
/* Monochrome (privacy policy): brand colour stays only in the logo cell and title mark. */
body.is-mono{--bg:#000;--surface:#0A0A0A;--surface-2:#141414;--fg:#FFF;--fg2:#D9D9D9;--fg3:#A6A6A6;--line:rgba(255,255,255,.14);--line-strong:rgba(255,255,255,.34);--cell:rgba(255,255,255,.26);--brand:#FFF;--link:#FFF;--focus:#FFF;--glass:rgba(0,0,0,.8)}
[data-theme="light"] body.is-mono{--bg:#FFF;--surface:#FFF;--surface-2:#F5F5F5;--fg:#000;--fg2:#2B2B2B;--fg3:#5E5E5E;--line:#E6E6E6;--line-strong:#BDBDBD;--cell:rgba(0,0,0,.16);--brand:#000;--link:#000;--focus:#000;--glass:rgba(255,255,255,.86)}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--fg);font:var(--fw-regular) var(--fs-md)/var(--lh-body) var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
a{color:var(--link);text-underline-offset:3px}a:hover{color:var(--fg)}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
::selection{background:var(--lit);color:var(--on-lit)}
/* Display type: tight line-height means each line's selection box overlaps the line above. A translucent highlight keeps descenders visible. */
.cs-hero h1::selection,.cs-hero h1 *::selection,.pp-hd h1::selection,.pp-hd h1 *::selection{background:color-mix(in srgb,var(--lit) 34%,transparent);color:var(--fg)}
[hidden]{display:none!important}
button,input{font:inherit;color:inherit}
.fw-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.fw-skip{position:absolute;left:var(--s4);top:-200px;z-index:100;padding:var(--s3) var(--s4);border-radius:var(--r-sm);background:var(--lit);color:var(--on-lit);font-weight:var(--fw-semibold);text-decoration:none}.fw-skip:focus{top:var(--s4);color:var(--on-lit)}
.fw-ico{display:block;flex:none}

.fw-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s3);min-height:44px;padding:0 var(--s5);border:1px solid transparent;border-radius:var(--r-sm);font:var(--fw-semibold) var(--fs-md)/1 var(--font-body);text-decoration:none;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-1) var(--ease),transform var(--dur-1) var(--ease)}
.fw-btn-primary{background:var(--lit);color:var(--on-lit)}.fw-btn-primary:hover{background:var(--lit-hover);color:var(--on-lit)}.fw-btn-primary:active{background:var(--lit-press);transform:translateY(1px)}
.fw-btn-lg{min-height:52px;padding:0 26px}
.fw-btn .fw-ico-arrow{transition:transform var(--dur-2) var(--ease)}.fw-btn:hover .fw-ico-arrow{transform:translateX(3px)}
.fw-btn[aria-busy="true"]{cursor:progress;opacity:.75}

.fw-tt{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--glass);color:var(--fg);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color var(--dur-1) var(--ease)}
.fw-tt:hover{border-color:var(--fg)}.fw-tt .fw-ico{grid-area:1/1}
[data-theme="dark"] .fw-tt .fw-ico-moon,[data-theme="light"] .fw-tt .fw-ico-sun,html:not([data-theme]) .fw-tt{display:none}

.cs-wrap{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--section-x)}
.cs-logo{display:inline-flex;align-items:center;gap:.34em;min-height:44px;font-size:24px;line-height:1;color:var(--fg);text-decoration:none}.cs-logo:hover{color:var(--fg)}
.cs-mark{width:1.18em;height:1.18em;overflow:visible}.cs-mark .c{fill:var(--cell)}
.cs-wm{width:5.092em;height:1em;overflow:visible;transform:translateY(.1em)}
.cs-mark-lit{fill:var(--lit);transition:fill var(--dur-2) var(--ease),stroke var(--dur-2) var(--ease)}
.cs-away .cs-mark-lit{fill:transparent;stroke:var(--lit);stroke-width:1.6;stroke-dasharray:2.4 2.2}

/* Coming soon hero */
.cs-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;min-height:100vh;min-height:100svh;background:var(--bg)}
.cs-hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.cs-lit{position:absolute;left:0;top:0;width:16px;height:16px;z-index:1;background:var(--lit);pointer-events:none;transform-origin:0 0;will-change:transform}
.cs-lit.cs-lock{animation:cs-lock 1.1s var(--ease) infinite}@keyframes cs-lock{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--lit) 60%,transparent)}100%{box-shadow:0 0 0 14px color-mix(in srgb,var(--lit) 0%,transparent)}}
.cs-top,.cs-main,.cs-bar{position:relative;z-index:3}
.cs-top{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);min-height:88px}
.cs-main{flex:1;display:flex}.cs-main:focus{outline:none}
.cs-hero-in{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--s5);padding:var(--s7) 0 var(--s8)}
.cs-status{display:inline-flex;align-items:center;gap:var(--s2);margin:0;min-height:32px;padding:5px var(--s3);border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--glass);font:var(--fw-medium) var(--fs-label)/1.35 var(--font-mono);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--fg2)}
.cs-status i{width:8px;height:8px;flex:none;background:var(--success);animation:cs-pulse 2.4s var(--ease) infinite}@keyframes cs-pulse{50%{opacity:.35}}
.cs-hero h1{margin:0;max-width:11ch;font:var(--fw-bold) clamp(3rem,calc(1.4rem + 7.2vw),10.5rem)/var(--lh-d1) var(--font-display);letter-spacing:-.045em;text-wrap:balance;overflow-wrap:break-word}
.cs-hero h1 em{font-style:normal;color:var(--lit)}
.cs-lead{margin:0;max-width:34em;font-size:clamp(1.0625rem,calc(1rem + .35vw),1.3125rem);line-height:var(--lh-body);color:var(--fg2);text-wrap:pretty}

.cs-nf{position:relative;display:flex;flex-direction:column;gap:var(--s2);width:100%;max-width:560px;margin-top:var(--s2)}
.cs-nf-row{display:flex;gap:var(--s2);padding:6px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--glass);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:border-color var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}
.cs-nf-row:focus-within{border-color:var(--lit);box-shadow:0 0 0 3px color-mix(in srgb,var(--lit) 24%,transparent)}
.cs-nf input[type="email"]{flex:1;min-width:0;min-height:48px;padding:0 var(--s3);border:0;border-radius:var(--r-sm);background:transparent;color:var(--fg);font-size:var(--fs-md);outline:none}
.cs-nf input[type="email"]::placeholder{color:var(--fg3);opacity:1}
.cs-nf input:-webkit-autofill{-webkit-text-fill-color:var(--fg);-webkit-box-shadow:0 0 0 40px var(--bg) inset;caret-color:var(--fg)}
.cs-nf .fw-btn{flex:none}
.cs-nf.is-err .cs-nf-row{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 18%,transparent)}
.cs-nf-err{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--danger)}
.cs-nf-note{margin:0;font-size:var(--fs-sm);line-height:1.5;color:var(--fg3);text-wrap:pretty}.cs-nf-note a{color:var(--fg2)}.cs-nf-note a:hover{color:var(--fg)}
.cs-hp{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}

.cs-ok{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s2);width:100%;max-width:560px;margin-top:var(--s2);padding:var(--s5);border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--glass);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.cs-ok-h{display:flex;align-items:center;gap:var(--s3);margin:0;font:var(--fw-semibold) 1.25rem/1.3 var(--font-display);letter-spacing:-.02em;color:var(--fg)}.cs-ok-h:focus{outline:none}.cs-ok-h i{width:12px;height:12px;flex:none;background:var(--lit)}
.cs-ok p{margin:0;color:var(--fg2);font-size:var(--fs-body)}.cs-ok p span{color:var(--fg)}.cs-ok div{margin-top:var(--s2)}
.cs-undo{margin-top:var(--s1);min-height:44px;padding:0;border:0;background:none;color:var(--fg3);font-size:var(--fs-sm);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.cs-undo:hover{color:var(--fg)}

.cs-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--s2) var(--s5);min-height:72px;padding-block:var(--s3);border-top:1px solid var(--line);font-size:var(--fs-xs);color:var(--fg3)}
.cs-bar nav{display:flex;align-items:center;gap:var(--s5)}
.cs-bar a{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;color:var(--fg2);text-decoration:none}.cs-bar a:hover{color:var(--fg)}
.cs-read{display:flex;gap:var(--s2);align-items:center;font:var(--fw-medium) var(--fs-micro) var(--font-mono);letter-spacing:var(--ls-micro);text-transform:uppercase;color:var(--fg3)}.cs-read b{font-weight:inherit;color:var(--fg2)}

/* Inner pages (privacy, 404, page) */
.pp-top{border-bottom:1px solid var(--line)}
.pp-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);min-height:88px}
.pp-nav-r{display:flex;align-items:center;gap:var(--s3)}
.pp-back{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;padding:0 var(--s2);color:var(--fg2);font-size:var(--fs-body);font-weight:var(--fw-medium);text-decoration:none}.pp-back:hover{color:var(--fg)}
.pp-hd{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s4);padding:var(--s8) var(--section-x) var(--s7)}
.pp-kicker{margin:0;font:var(--fw-medium) var(--fs-label)/1.4 var(--font-mono);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--fg3)}
.pp-hd h1{margin:0;font:var(--fw-bold) clamp(2.75rem,calc(1.6rem + 5vw),6rem)/var(--lh-d1) var(--font-display);letter-spacing:-.045em;text-wrap:balance}
.pp-dot{color:var(--lit)}
.pp-intro{margin:0;max-width:38em;font-size:clamp(1.0625rem,calc(1rem + .3vw),1.25rem);line-height:var(--lh-body);color:var(--fg2);text-wrap:pretty}
.pp-body{padding:var(--s8) 0 var(--s9)}.pp-body:focus{outline:none}
.pp-doc{display:flex;flex-direction:column;gap:var(--s7);max-width:760px}
.pp-sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border-top:2px solid var(--fg);border-bottom:1px solid var(--line-strong)}
.pp-sum div{display:flex;flex-direction:column;gap:var(--s1);padding:var(--s4) var(--s4) var(--s4) 0}.pp-sum div+div{padding-left:var(--s4);border-left:1px solid var(--line)}
.pp-sum dt{font:var(--fw-medium) var(--fs-micro)/1.4 var(--font-mono);letter-spacing:var(--ls-micro);text-transform:uppercase;color:var(--fg3)}
.pp-sum dd{margin:0;font-weight:var(--fw-semibold);font-size:var(--fs-md);line-height:1.4;color:var(--fg)}
.pp-doc section{display:grid;grid-template-columns:56px minmax(0,1fr);gap:var(--s3) 0;padding-top:var(--s5);border-top:1px solid var(--line)}
.pp-n{padding-top:6px;font:var(--fw-medium) var(--fs-label)/1 var(--font-mono);letter-spacing:var(--ls-label);color:var(--fg3)}
.pp-doc section>div{display:flex;flex-direction:column;gap:var(--s3)}
.pp-doc h2{margin:0;font:var(--fw-semibold) clamp(1.25rem,calc(1.15rem + .4vw),1.5rem)/1.25 var(--font-display);letter-spacing:-.03em;color:var(--fg)}
.pp-doc p,.pp-doc li{margin:0;font-size:var(--fs-md);line-height:var(--lh-prose);color:var(--fg2);text-wrap:pretty}
.pp-doc ul{margin:0;padding-left:1.1em;display:flex;flex-direction:column;gap:var(--s2)}.pp-doc li::marker{color:var(--fg3)}
.pp-doc strong{color:var(--fg);font-weight:var(--fw-semibold)}
.pp-doc a{color:var(--fg);text-decoration-thickness:1px}.pp-doc a:hover{text-decoration-thickness:2px}
.pp-prose{gap:var(--s4)}
.pp-foot{border-top:1px solid var(--line);font-size:var(--fs-xs);color:var(--fg3)}
.pp-foot .cs-wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--s2) var(--s5);min-height:72px}
.pp-foot nav{display:flex;gap:var(--s5)}.pp-foot a{display:inline-flex;align-items:center;min-height:44px;color:var(--fg2);text-decoration:none}.pp-foot a:hover{color:var(--fg)}

@media (max-width:860px){.cs-read{display:none}}
@media (max-width:640px){
.cs-top,.pp-nav{min-height:72px}.cs-logo{font-size:21px}
.cs-hero-in{gap:var(--s4);padding:var(--s5) 0 var(--s7)}
.cs-nf-row{flex-direction:column;padding:var(--s2)}.cs-nf .fw-btn{width:100%}
.cs-bar-t{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.cs-bar a{min-width:44px;justify-content:center}
.pp-back{padding:0;width:44px;justify-content:center;font-size:0;gap:0}
.pp-hd{padding-top:var(--s6);padding-bottom:var(--s6)}.pp-body{padding:var(--s6) 0 var(--s8)}
.pp-sum{grid-template-columns:minmax(0,1fr)}.pp-sum div+div{padding-left:0;border-left:0;border-top:1px solid var(--line)}
.pp-doc section{grid-template-columns:minmax(0,1fr)}.pp-n{padding-top:0}
}
@media (max-height:560px) and (orientation:landscape){.cs-hero-in{padding:var(--s4) 0 var(--s5)}.cs-hero h1{font-size:clamp(2.5rem,8vh,5rem)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media (forced-colors:active){.cs-lit,.cs-hero canvas{display:none}.fw-btn,.fw-tt,.cs-nf-row,.cs-status{border:1px solid CanvasText}}
@media print{.cs-hero canvas,.cs-lit,.fw-tt,.fw-skip{display:none}body{background:#fff;color:#000}}
