*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --v-1:#5C378B;--v-2:#476BA6;--v-3:#2F96A4;--v-4:#54B063;--v-5:#71BC42;--v-6:#8C945B;

  --primary:#5C378B;--primary-d:#4A2B70;--primary-lt:rgba(92,55,139,.10);--primary-brd:rgba(92,55,139,.22);
  --teal:#2F96A4;--green:#54B063;

  --grad:linear-gradient(90deg,var(--v-1),var(--v-2),var(--v-3),var(--v-4),var(--v-5),var(--v-6));
  --grad-brand:linear-gradient(120deg,#5C378B 0%,#476BA6 35%,#2F96A4 65%,#54B063 100%);
  --grad-soft:linear-gradient(135deg,rgba(92,55,139,.14),rgba(47,150,164,.12) 55%,rgba(84,176,99,.12));

  --bg:#FBFAFD;--sur:#ffffff;--sur2:#F5F2FA;--sur3:#ECE7F4;
  --dk:#171226;--dk2:#0F0B1C;

  --t1:#1B1533;--t2:#4A4460;--t3:#8B8598;--t4:#C9C4D6;
  --ton-dk:#F3F0FA;--ton-dk2:#B7B1C9;

  --ln:rgba(27,21,51,.08);--ln2:rgba(27,21,51,.14);--ln-dk:rgba(255,255,255,.10);

  --ok:#2E9E5B;--err:#D24B4B;

  --sb:rgba(92,55,139,.32);

  --shadow-1:0 1px 2px rgba(27,21,51,.05),0 2px 10px rgba(27,21,51,.05);
  --shadow-2:0 10px 34px rgba(27,21,51,.10);
  --shadow-3:0 24px 60px rgba(27,21,51,.16);
  --glow:0 12px 30px rgba(92,55,139,.32);
  --glow-strong:0 18px 46px rgba(92,55,139,.44);

  --nav:76px;--nav-sm:62px;--max:1200px;

  --r-1:4px;--r-2:8px;--r-3:12px;--r-4:16px;--r-5:24px;--r-pill:999px;

  --ease:cubic-bezier(.16,1,.3,1);
  --easeb:cubic-bezier(.34,1.4,.64,1);
  --ease-std:cubic-bezier(.4,0,.2,1);

  --font:-apple-system,system-ui,'Segoe UI',Roboto,Helvetica,Arial,'Apple Color Emoji','Segoe UI Emoji',sans-serif;

  color-scheme:light;
}
html{scroll-behavior:smooth;width:100%;-webkit-text-size-adjust:100%}
body{width:100%;font-family:var(--font);background:var(--bg);color:var(--t1);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent}
img{max-width:100%;height:auto;display:block}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
input,textarea,select{font-family:inherit;font-size:1rem;color:inherit}
a{text-decoration:none;color:inherit}
:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--r-1)}
.w{width:100%;max-width:var(--max);margin:0 auto;padding-inline:clamp(20px,5vw,48px)}
.grad-title{background:var(--grad-brand);background-size:230% 100%;background-position:0% 50%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
