/* grid.min.css */
:root,[data-bs-theme=light]{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33, 37, 41, 0.75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33, 37, 41, 0.5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13, 110, 253, 0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, 0.75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(222, 226, 230, 0.5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, 0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){h1{font-size:2.5rem}}h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){h2{font-size:2rem}}h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){h3{font-size:1.75rem}}h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){h4{font-size:1.5rem}}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:.875em}mark{padding:.1875em;color:var(--bs-highlight-color);background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.card{--bs-card-spacer-y:1rem;--bs-card-spacer-x:1rem;--bs-card-title-spacer-y:0.5rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width:var(--bs-border-width);--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y:0.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(var(--bs-body-color-rgb), 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:var(--bs-body-bg);--bs-card-img-overlay-padding:1rem;--bs-card-group-margin:0.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}:root{--bs-gutter-x:1.5rem;--bs-gutter-y:0}*,::after,::before{box-sizing:border-box}.container,.container-fluid{width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-right:auto;margin-left:auto}@media(min-width:576px){.container{max-width:540px}}@media(min-width:768px){.container{max-width:720px}}@media(min-width:992px){.container{max-width:960px}}@media(min-width:1200px){.container{max-width:1140px}}@media(min-width:1400px){.container{max-width:1320px}}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1*var(--bs-gutter-y));margin-right:calc(-.5*var(--bs-gutter-x));margin-left:calc(-.5*var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.3333333%}.col-2{flex:0 0 auto;width:16.666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.333333%}.col-5{flex:0 0 auto;width:41.666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.333333%}.col-8{flex:0 0 auto;width:66.666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.333333%}.col-11{flex:0 0 auto;width:91.666667%}.col-12{flex:0 0 auto;width:100%}@media(min-width:576px){.col-sm{flex:1 0 0%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.3333333%}.col-sm-2{flex:0 0 auto;width:16.666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.333333%}.col-sm-5{flex:0 0 auto;width:41.666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.333333%}.col-sm-8{flex:0 0 auto;width:66.666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.333333%}.col-sm-11{flex:0 0 auto;width:91.666667%}.col-sm-12{flex:0 0 auto;width:100%}}@media(min-width:768px){.col-md{flex:1 0 0%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.3333333%}.col-md-2{flex:0 0 auto;width:16.666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.333333%}.col-md-5{flex:0 0 auto;width:41.666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.333333%}.col-md-8{flex:0 0 auto;width:66.666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.333333%}.col-md-11{flex:0 0 auto;width:91.666667%}.col-md-12{flex:0 0 auto;width:100%}}@media(min-width:992px){.col-lg{flex:1 0 0%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.3333333%}.col-lg-2{flex:0 0 auto;width:16.666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.333333%}.col-lg-5{flex:0 0 auto;width:41.666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.333333%}.col-lg-8{flex:0 0 auto;width:66.666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.333333%}.col-lg-11{flex:0 0 auto;width:91.666667%}.col-lg-12{flex:0 0 auto;width:100%}}@media(min-width:1200px){.col-xl{flex:1 0 0%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.3333333%}.col-xl-2{flex:0 0 auto;width:16.666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.333333%}.col-xl-5{flex:0 0 auto;width:41.666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.333333%}.col-xl-8{flex:0 0 auto;width:66.666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.333333%}.col-xl-11{flex:0 0 auto;width:91.666667%}.col-xl-12{flex:0 0 auto;width:100%}}@media(min-width:1400px){.col-xxl{flex:1 0 0%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.3333333%}.col-xxl-2{flex:0 0 auto;width:16.666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.333333%}.col-xxl-5{flex:0 0 auto;width:41.666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.333333%}.col-xxl-8{flex:0 0 auto;width:66.666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.333333%}.col-xxl-11{flex:0 0 auto;width:91.666667%}.col-xxl-12{flex:0 0 auto;width:100%}}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:.25rem}.g-1,.gy-1{--bs-gutter-y:.25rem}.g-2,.gx-2{--bs-gutter-x:.5rem}.g-2,.gy-2{--bs-gutter-y:.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}.d-none{display:none!important}.d-block{display:block!important}.d-inline-block{display:inline-block!important}.d-flex{display:flex!important}.d-grid{display:grid!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.justify-content-start{justify-content:flex-start!important}.justify-content-center{justify-content:center!important}.justify-content-end{justify-content:flex-end!important}.justify-content-between{justify-content:space-between!important}.align-items-start{align-items:flex-start!important}.align-items-center{align-items:center!important}.align-items-end{align-items:flex-end!important}.text-start{text-align:left!important}.text-center{text-align:center!important}.text-end{text-align:right!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.ms-auto{margin-left:auto!important}.me-auto{margin-right:auto!important}.w-100{width:100%!important}.h-100{height:100%!important}@media(min-width:992px){.flex-lg-row-reverse{flex-direction:row-reverse!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-end{justify-content:flex-end!important}.d-lg-none{display:none!important}.d-lg-block{display:block!important}.d-lg-flex{display:flex!important}}@media(min-width:768px){.d-md-none{display:none!important}.d-md-block{display:block!important}.d-md-flex{display:flex!important}.text-md-start{text-align:left!important}}
/* colors_and_type.css */
@font-face {
  font-family: 'Instrument Sans Fallback';
  src: local('Arial'), local('ArialMT'), local('Liberation Sans'), local('Arimo');
  size-adjust: 102.61%;
  ascent-override: 94.53%;
  descent-override: 24.36%;
  line-gap-override: 0%;
}
:root {
  --white: #fff; --bg: #fff; --bg-subtle: #FFFFFF; --bg-muted: #EDF1FA; --surface: #fff; --paper: #FAFBFD;
  --ink: #0A1633; --ink-800: #122048; --ink-700: #1A2B5E;
  --slate-900: #0A0F1E; --slate-800: #1A2138; --slate-700: #2D3550; --slate-600: #49516B; --slate-500: #656D85; --slate-400: #8E96AB; --slate-300: #BEC4D3; --slate-200: #DDE2EC; --slate-150: #E7EBF2; --slate-100: #F0F3F8; --slate-50: #F7F8FB;
  --fg1: #0A0F1E; --fg2: #49516B; --fg3: #656D85; --fg-ondark: #F2F5FF; --fg-ondark-2: #AEB8D6;
  --ks-blue: #0A5BF0; --primary: #0A5BF0; --ks-blue-700: #0033EE; --ks-blue-deep: #0226B8; --ks-blue-500: #0A5BF0; --ks-blue-bright: #0A84FF; --ks-blue-300: #8DB8FF; --ks-blue-200: #BBD4FF; --ks-blue-100: #DCE8FF; --ks-blue-50: #EEF4FF; --violet: #7C3AED; --violet-300: #C4B5FD; --violet-50: #F5F3FF; --peach: #FF9A76; --peach-deep: #C2521F; --peach-100: #FFE6DB; --glow-blue: rgba(10,132,255,.35);
  --gold: #FF9A76; --gold-600: #F0754C; --gold-deep: #B44A1C; --gold-300: #FFC4AE; --gold-100: #FFE6DB; --gold-50: #FFF4EF;
  --border: #E3E7EF; --border-strong: #C9D0DE; --border-ondark: rgba(255,255,255,.16); --rule: #E7EBF2; --rule-ondark: rgba(255,255,255,.14); --ring: rgba(10,91,240,.28);
  --success: #12795A; --success-bg: #EAF6F1; --danger: #C0392B; --danger-bg: #FDEEEC; --warning: #A97210; --warning-bg: #FDF6E9;
  --ks-grad: linear-gradient(120deg, #0033EE 0%, #0A5BF0 55%, #0A84FF 100%); --gold-grad: linear-gradient(96deg, #F0754C, #FF9A76); --flow-grad: linear-gradient(90deg, #0033EE 0%, #0A84FF 38%, #7C3AED 72%, #FF9A76 100%);
  --font-display: "Instrument Sans", "Instrument Sans Fallback", ui-sans-serif, system-ui, sans-serif; --font-sans: "Instrument Sans", "Instrument Sans Fallback", ui-sans-serif, system-ui, sans-serif; --font-mono: "Instrument Sans", "Instrument Sans Fallback", ui-sans-serif, system-ui, sans-serif;
  --fs-display: clamp(2.9rem, 1.6rem + 4.4vw, 5.8rem); --fs-h1: clamp(2.3rem, 1.5rem + 2.8vw, 4rem); --fs-h2: clamp(1.9rem, 1.3rem + 2vw, 3.1rem); --fs-h3: clamp(1.3rem, 1.1rem + .7vw, 1.7rem); --fs-h4: 1.12rem; --fs-lead: clamp(1.07rem, 1rem + .35vw, 1.3rem); --fs-body: 1rem; --fs-sm: .9rem; --fs-eyebrow: 11.5px;
  --lh-tight: 1; --lh-snug: 1.06; --lh-head: 1.1; --lh-body: 1.62; --fw-reg: 400; --fw-med: 500; --fw-semi: 600; --fw-bold: 700;
  --tracking-display: -.036em; --tracking-head: -.026em; --tracking-eyebrow: .02em;
  --r-xs: 4px; --r-sm: 8px; --r-md: 12px; --r-lg: 16px; --r-xl: 22px; --r-2xl: 28px; --r-pill: 999px;
  --sh-xs: 0 1px 2px rgba(10,15,30,.05); --sh-sm: 0 4px 12px -6px rgba(10,15,30,.1); --sh-md: 0 14px 34px -18px rgba(10,15,30,.16); --sh-lg: 0 30px 70px -30px rgba(10,15,30,.2); --sh-xl: 0 50px 110px -40px rgba(10,15,30,.26); --sh-blue: 0 18px 40px -18px rgba(11,79,230,.45); --sh-ion: var(--sh-blue); --sh-gold: 0 18px 40px -18px rgba(245,179,50,.45);
  --dur-fast: .16s; --dur: .28s; --dur-slow: .55s; --dur-cine: 1.1s; --ease-out: cubic-bezier(.16,1,.3,1); --ease-in-out: cubic-bezier(.65,0,.35,1); --ease-flow: cubic-bezier(.4,0,.2,1);
  --container: 1160px; --container-wide: 1320px; --gutter: clamp(20px, 4vw, 56px); --sp-1: 8px; --sp-2: 12px; --sp-3: 18px; --sp-4: 26px; --sp-5: 40px; --sp-6: 64px; --sp-7: 96px;
}
* { box-sizing: border-box; } html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--bg); color: var(--fg1); font: var(--fw-reg) var(--fs-body)/var(--lh-body) var(--font-sans); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
h1, h2, h3, h4, h5, h6 { margin: 0; font-family: var(--font-display); font-weight: var(--fw-semi); color: var(--fg1); }
p { margin: 0; } img, svg { max-width: 100%; }
a { color: var(--ks-blue); text-decoration: none; transition: color var(--dur-fast) var(--ease-out); } a:hover { color: var(--ks-blue-700); }
:focus-visible { outline: 2px solid var(--ks-blue-bright); outline-offset: 2px; border-radius: 4px; } ::selection { background: var(--ks-blue-100); color: var(--ink); }
.ks-display { font-family: var(--font-display); font-weight: var(--fw-semi); font-size: var(--fs-display); line-height: var(--lh-tight); letter-spacing: var(--tracking-display); }
.ks-h1 { font-family: var(--font-display); font-weight: var(--fw-semi); font-size: var(--fs-h1); line-height: var(--lh-snug); letter-spacing: var(--tracking-head); }
.ks-h2 { font-family: var(--font-display); font-weight: var(--fw-semi); font-size: var(--fs-h2); line-height: var(--lh-head); letter-spacing: var(--tracking-head); }
.ks-h3 { font-family: var(--font-display); font-weight: var(--fw-semi); font-size: var(--fs-h3); line-height: 1.2; letter-spacing: -.018em; }
.ks-h4 { font-family: var(--font-display); font-weight: var(--fw-semi); font-size: var(--fs-h4); line-height: 1.3; letter-spacing: -.012em; }
.ks-lead { font-size: var(--fs-lead); line-height: 1.5; color: var(--fg2); text-wrap: pretty; } .ks-body { font-size: var(--fs-body); color: var(--fg2); text-wrap: pretty; } .ks-sm { font-size: var(--fs-sm); color: var(--fg3); }
.ks-mono { font-family: var(--font-sans); font-size: 13px; letter-spacing: 0; font-weight: 500; }
/* keystone.css */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: var(--font-sans);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: var(--fg1);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: clip;
}
::selection { background: var(--ks-blue-200); color: var(--ink); }
a { color: var(--ks-blue); text-decoration: none; transition: color var(--dur) var(--ease-out); }
a:hover { color: var(--ks-blue-700); }
img { max-width: 100%; }
h1,h2,h3,h4,h5,h6 { margin: 0; }
p { margin: 0; }
:focus-visible { outline: none; box-shadow: 0 0 0 3px var(--ring); border-radius: var(--r-xs); }
.ks-container { width: 100%; max-width: var(--container); margin: 0 auto; padding-inline: var(--gutter); }
.ks-container-wide { width: 100%; max-width: var(--container-wide); margin: 0 auto; padding-inline: var(--gutter); }
.ks-section { padding-block: clamp(64px, 8vw, 128px); }
.ks-section-sm { padding-block: clamp(48px, 6vw, 88px); }
.ks-bg-subtle { background: var(--bg-subtle); }
.ks-bg-muted { background: var(--bg-muted); }
.ks-divider { height: 1px; background: var(--border); border: 0; margin: 0; }
.ks-eyebrow {
  font: var(--fw-semi) var(--fs-eyebrow)/1 var(--font-sans);
  letter-spacing: var(--tracking-eyebrow);
  text-transform: none;
  color: var(--primary);
}
.ks-display { font: var(--fw-bold) var(--fs-display)/var(--lh-tight) var(--font-sans); letter-spacing: var(--tracking-display); color: var(--fg1); text-wrap: balance; }
.ks-h1 { font: var(--fw-bold) var(--fs-h1)/var(--lh-snug) var(--font-sans); letter-spacing: var(--tracking-head); color: var(--fg1); text-wrap: balance; }
.ks-h2 { font: var(--fw-bold) var(--fs-h2)/var(--lh-snug) var(--font-sans); letter-spacing: var(--tracking-head); color: var(--fg1); text-wrap: balance; }
.ks-h3 { font: var(--fw-semi) var(--fs-h3)/1.25 var(--font-sans); letter-spacing: -0.012em; color: var(--fg1); }
.ks-h4 { font: var(--fw-semi) var(--fs-h4)/1.3 var(--font-sans); color: var(--fg1); }
.ks-lead { font: var(--fw-reg) var(--fs-lead)/1.55 var(--font-sans); color: var(--fg2); text-wrap: pretty; }
.ks-body { font: var(--fw-reg) var(--fs-body)/var(--lh-body) var(--font-sans); color: var(--fg2); text-wrap: pretty; }
.ks-sm { font: var(--fw-reg) var(--fs-sm)/1.55 var(--font-sans); color: var(--fg2); }
.ks-mono { font: var(--fw-med) var(--fs-sm)/1.5 var(--font-mono); letter-spacing: 0; }
.ks-grad-text { background: linear-gradient(120deg,#6aa8ff,#0a84ff); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; }
.ks-gold-text { color: var(--gold); }
.ks-measure { max-width: 60ch; }
.ks-measure-sm { max-width: 46ch; }
.ks-wedge {
  position: relative; isolation: isolate;
  display: inline-flex; align-items: center; gap: 9px;
  font: var(--fw-semi) 12px/1 var(--font-sans);
  letter-spacing: 0; text-transform: none;
  padding: 9px 16px 9px 14px; color: var(--ks-blue);
  width: fit-content; max-width: 100%; white-space: normal; text-wrap: balance;
}
.ks-wedge::before {
  content: ""; width: 8px; height: 8px; flex: none; align-self: center;
  background: currentColor; clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
}
.ks-wedge::after {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: var(--ks-blue-50); border-left: 2px solid var(--ks-blue);
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%);
}
.ks-wedge--gold { color: var(--gold-deep); }
.ks-wedge--gold::after { background: var(--gold-50); border-left-color: var(--gold); }
.ks-wedge--ondark { color: var(--gold); }
.ks-wedge--ondark::after { background: rgba(245,179,50,.13); border-left-color: var(--gold); }
.ks-wedge--ondark-blue { color: var(--ks-blue-bright); }
.ks-wedge--ondark-blue::after { background: rgba(10,132,255,.16); border-left-color: var(--ks-blue-bright); }
.ks-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  font: var(--fw-semi) 15px/1 var(--font-sans); letter-spacing: -.005em;
  border-radius: var(--r-md); border: 1px solid transparent; cursor: pointer;
  padding: 13px 22px; transition: all var(--dur) var(--ease-out); white-space: nowrap;
  text-decoration: none;
}
.ks-btn:active { transform: scale(.98); }
.ks-btn svg { width: 18px; height: 18px; flex: none; }
.ks-btn--lg { font-size: 16px; padding: 16px 28px; }
.ks-btn--sm { font-size: 13.5px; padding: 9px 16px; }
.ks-btn--sm svg { width: 16px; height: 16px; }
.ks-btn--primary { background: var(--ks-blue); color: #fff; box-shadow: var(--sh-blue); }
.ks-btn--primary:hover { background: var(--ks-blue-700); color:#fff; transform: translateY(-1px); }
.ks-btn--gold { background: var(--gold); color: #3a2602; box-shadow: var(--sh-gold); }
.ks-btn--gold:hover { background: var(--gold-600); color: #fff; transform: translateY(-1px); }
.ks-btn--secondary { background: #fff; color: var(--ks-blue); border-color: var(--border-strong); }
.ks-btn--secondary:hover { border-color: var(--ks-blue); background: var(--ks-blue-50); transform: translateY(-1px); }
.ks-btn--ghost { background: transparent; color: var(--fg1); }
.ks-btn--ghost:hover { background: var(--slate-100); }
.ks-btn--ondark { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.22); backdrop-filter: blur(6px); }
.ks-btn--ondark:hover { background: rgba(255,255,255,.16); color:#fff; transform: translateY(-1px); }
.ks-btn--link { background: transparent; color: var(--ks-blue); padding: 6px 0; }
.ks-btn--link:hover { color: var(--ks-blue-700); gap: 12px; }
.ks-ink { position: relative; background: var(--ink); color: var(--fg-ondark); overflow: hidden; }
.ks-ink > .ks-container, .ks-ink > .ks-container-wide, .ks-ink > .ks-container > *, .ks-ink > .ks-container-wide > * { position: relative; }
.ks-ink > .ks-container, .ks-ink > .ks-container-wide { z-index: 1; }
.ks-ink h1,.ks-ink h2,.ks-ink h3,.ks-ink h4 { color: #fff; }
.ks-ink .ks-lead,.ks-ink .ks-body { color: var(--fg-ondark-2); }
.ks-ink .ks-eyebrow { color: var(--gold); }
.ks-ashlar::before {
  content: ""; position: absolute; inset: 0; opacity: .09; pointer-events: none; z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='112'%20height='128'%20viewBox='0%200%20112%20128'%3E%3Cg%20fill='none'%20stroke='%23ffffff'%20stroke-opacity='0.7'%3E%3Cpath%20d='M56%2030L88%2048L88%2082L56%20100L24%2082L24%2048Z'/%3E%3Cpath%20d='M56%2030L56%2065'/%3E%3Cpath%20d='M56%2065L88%2082'/%3E%3Cpath%20d='M56%2065L24%2082'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 112px 128px;
  -webkit-mask-image: radial-gradient(80% 75% at 90% 4%, #000, transparent 62%);
  mask-image: radial-gradient(80% 75% at 90% 4%, #000, transparent 62%);
}
.ks-glow { position: absolute; border-radius: 50%; pointer-events: none; filter: blur(6px); z-index: 0;
  background: radial-gradient(circle, rgba(10,132,255,.42), transparent 62%); }
.ks-glow--gold { background: radial-gradient(circle, rgba(245,179,50,.30), transparent 64%); }
.ks-cubepat { position: relative; }
.ks-cubepat > * { position: relative; z-index: 1; }
.ks-cubepat::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='58'%20height='66'%20viewBox='0%200%2058%2066'%3E%3Cg%20fill='none'%20stroke='%230A1F3A'%20stroke-opacity='0.55'%3E%3Cpath%20d='M29%2015L45%2024L45%2042L29%2051L13%2042L13%2024Z'/%3E%3Cpath%20d='M29%2015L29%2033'/%3E%3Cpath%20d='M29%2033L45%2042'/%3E%3Cpath%20d='M29%2033L13%2042'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 58px 66px; opacity: .45;
  -webkit-mask-image: linear-gradient(180deg, #000, transparent);
  mask-image: linear-gradient(180deg, #000, transparent);
}
.ks-cubepat--ondark::before {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='58'%20height='66'%20viewBox='0%200%2058%2066'%3E%3Cg%20fill='none'%20stroke='%23ffffff'%20stroke-opacity='0.6'%3E%3Cpath%20d='M29%2015L45%2024L45%2042L29%2051L13%2042L13%2024Z'/%3E%3Cpath%20d='M29%2015L29%2033'/%3E%3Cpath%20d='M29%2033L45%2042'/%3E%3Cpath%20d='M29%2033L13%2042'/%3E%3C/g%3E%3C/svg%3E");
  opacity: .4;
}
.ks-cube-auto {
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='58'%20height='66'%20viewBox='0%200%2058%2066'%3E%3Cg%20fill='none'%20stroke='%230A1F3A'%20stroke-opacity='0.5'%3E%3Cpath%20d='M29%2015L45%2024L45%2042L29%2051L13%2042L13%2024Z'/%3E%3Cpath%20d='M29%2015L29%2033'/%3E%3Cpath%20d='M29%2033L45%2042'/%3E%3Cpath%20d='M29%2033L13%2042'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 58px 66px; opacity: .4;
  -webkit-mask-image: radial-gradient(125% 100% at 50% 0%, #000 28%, transparent 76%);
  mask-image: radial-gradient(125% 100% at 50% 0%, #000 28%, transparent 76%);
}
.ks-cube-auto.is-dark {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='58'%20height='66'%20viewBox='0%200%2058%2066'%3E%3Cg%20fill='none'%20stroke='%23ffffff'%20stroke-opacity='0.6'%3E%3Cpath%20d='M29%2015L45%2024L45%2042L29%2051L13%2042L13%2024Z'/%3E%3Cpath%20d='M29%2015L29%2033'/%3E%3Cpath%20d='M29%2033L45%2042'/%3E%3Cpath%20d='M29%2033L13%2042'/%3E%3C/g%3E%3C/svg%3E");
  opacity: .3;
}
@keyframes ksCubeIn { 0% { opacity: 0; transform: translateY(14px) scale(.92); } 100% { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: no-preference) {
  .ks-cube-in { opacity: 0; }
  .ks-cube-in.is-in { animation: ksCubeIn .7s var(--ease-out) both; }
}
@media (prefers-reduced-motion: reduce) { .ks-cube-in { opacity: 1; } }
.kc-art { display: block; width: 100%; }
.kc-hero-art { width: 100%; max-width: 430px; margin-inline: auto; }
@media (max-width: 991px){ .kc-hero-art { max-width: 300px; margin-top: 4px; } }
.hero-split { display: grid; grid-template-columns: 1.05fr .95fr; gap: 48px; align-items: center; }
.hero-split > .kc-hero-art { max-width: 410px; }
@media (max-width: 991px){ .hero-split { grid-template-columns: 1fr; gap: 26px; } .hero-split > .kc-hero-art { display: none; } }
.stage-stack { display: grid; gap: 12px; width: 100%; max-width: 432px; margin-inline: auto; }
.stage-stack--grid { grid-template-columns: 1fr 1fr; }
.stage { position: relative; display: flex; align-items: flex-start; gap: 14px; padding: 15px 17px; background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-md); box-shadow: var(--sh-xs); transition: transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out); }
.stage:hover { box-shadow: var(--sh-md); border-color: var(--slate-300); transform: translateY(-2px); }
.stage .ks-icon-tile { width: 42px; height: 42px; flex: none; } .stage .ks-icon-tile svg { width: 20px; height: 20px; }
.stage-body { flex: 1; min-width: 0; }
.stage-n { font: var(--fw-bold) 11px/1 var(--font-mono); color: var(--gold-deep); letter-spacing: 0; text-transform: none; }
.stage-t { font: var(--fw-semi) 15px/1.2 var(--font-sans); color: var(--fg1); margin-top: 4px; }
.stage-s { font: var(--fw-reg) 12.5px/1.4 var(--font-sans); color: var(--fg3); margin-top: 3px; text-wrap: pretty; }
.stage--gold { border-color: var(--gold-300); }
.stage--gold .ks-icon-tile { background: var(--gold-50); color: var(--gold-deep); }
.stage--ondark { background: var(--ink-800); border-color: var(--border-ondark); box-shadow: none; }
.stage--ondark:hover { border-color: rgba(255,255,255,.22); }
.stage--ondark .stage-t { color: #fff; }
.stage--ondark .stage-s { color: var(--fg-ondark-2); }
.stage--ondark .ks-icon-tile { background: rgba(255,255,255,.07); color: var(--ks-blue-bright); }
.stage--ondark.stage--gold { border-color: rgba(245,179,50,.5); }
.stage--ondark.stage--gold .ks-icon-tile { background: rgba(245,179,50,.16); color: var(--gold); }
.stage-stack--stair .stage:nth-child(2) { margin-left: 14px; }
.stage-stack--stair .stage:nth-child(3) { margin-left: 28px; }
.stage-stack--stair .stage:nth-child(4) { margin-left: 42px; }
@media (max-width: 991px){ .stage-stack--stair .stage { margin-left: 0 !important; } }
.stage-prog { height: 6px; border-radius: var(--r-pill); background: var(--slate-150); overflow: hidden; margin-top: 9px; }
.stage--ondark .stage-prog { background: rgba(255,255,255,.12); }
.stage-prog i { display: block; height: 100%; border-radius: var(--r-pill); background: var(--ks-grad); transform: scaleX(0); transform-origin: left; transition: transform .9s var(--ease-out); }
.stage-prog i.go { background: var(--gold-grad); }
.ks-reveal.is-in .stage-prog i { transform: scaleX(1); }
.ks-reveal.rv-right:not(.is-in) { transform: translateX(28px); }
.ks-reveal.rv-up:not(.is-in) { transform: translateY(30px); }
.ks-reveal.rv-zoom:not(.is-in) { transform: scale(.9); }
.kc-art svg { display: block; width: 100%; height: auto; filter: drop-shadow(0 34px 50px rgba(6,16,34,.34)); }
.kc-art .kc-piece { transform-box: fill-box; transform-origin: center; }
@media (prefers-reduced-motion: no-preference) {
  .kc-art.is-in .kc-piece { animation: kcIn .7s var(--ease-out) both; animation-delay: calc(var(--i, 0) * 95ms); }
  .kc-art.is-in .kc-float { animation: kcIn .7s var(--ease-out) both, kcFloat 7s var(--ease-in-out) infinite; animation-delay: calc(var(--i, 0) * 95ms), calc(760ms + var(--i, 0) * 240ms); }
}
@keyframes kcIn { from { opacity: 0; transform: translateY(20px) scale(.94); } to { opacity: 1; transform: none; } }
@keyframes kcFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
@media (prefers-reduced-motion: no-preference) {
  .kc-art.kc-anim-lock.is-in .kc-piece { animation: kcLock .62s var(--ease-out) both; animation-delay: calc(var(--i,0) * 90ms); }
  .kc-art.kc-anim-stack.is-in .kc-piece { animation: kcStack .58s var(--ease-out) both; animation-delay: calc(var(--i,0) * 120ms); }
  .kc-art.kc-anim-separate.is-in .kc-piece { animation: kcSep .72s var(--ease-out) both; animation-delay: calc(var(--i,0) * 75ms); }
  .kc-art.kc-anim-grow.is-in .kc-piece { animation: kcGrow .66s var(--ease-out) both; animation-delay: calc(var(--i,0) * 95ms); }
  .kc-art.kc-anim-rotate.is-in { animation: kcRot .9s var(--ease-out) both; transform-origin: 50% 70%; }
  .kc-art.kc-anim-rotate.is-in .kc-piece { animation: kcFade .7s var(--ease-out) both; animation-delay: calc(var(--i,0) * 55ms); }
}
@keyframes kcLock { 0% { opacity: 0; transform: translateY(-32px) scale(1.03); } 72% { opacity: 1; transform: translateY(3px) scale(1); } 100% { transform: none; } }
@keyframes kcStack { from { opacity: 0; transform: translateY(38px) scale(.95); } to { opacity: 1; transform: none; } }
@keyframes kcSep { from { opacity: 0; transform: scale(1.5); } to { opacity: 1; transform: none; } }
@keyframes kcGrow { from { opacity: 0; transform: translateY(24px) scaleY(.62); } to { opacity: 1; transform: none; } }
@keyframes kcRot { from { transform: rotate(-11deg) scale(.86); } to { transform: none; } }
@keyframes kcFade { from { opacity: 0; } to { opacity: 1; } }
.ks-media { position: relative; isolation: isolate; border-radius: var(--r-lg); overflow: hidden; clip-path: polygon(0 0, calc(100% - 28px) 0, 100% 28px, 100% 100%, 0 100%); box-shadow: var(--sh-lg); background: var(--ink-800); }
.ks-media img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .7s var(--ease-out); }
.ks-media--wide img { aspect-ratio: 16 / 10; }
.ks-media--tall img { aspect-ratio: 4 / 5; }
.ks-media--square img { aspect-ratio: 1 / 1; }
.ks-media::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(135deg, rgba(10,22,38,.52), rgba(10,91,240,.14) 55%, rgba(10,22,38,.26)); mix-blend-mode: multiply; pointer-events: none; }
.ks-media::after { content: ""; position: absolute; z-index: 2; left: 16px; bottom: 15px; width: 24px; height: 24px; background: var(--gold-grad); clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%); opacity: .92; box-shadow: 0 4px 12px rgba(8,20,40,.4); pointer-events: none; }
.ks-media--blue::after { background: var(--ks-grad); }
.ks-media:hover img { transform: scale(1.04); }
.ks-media-cap { position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; padding: 30px 20px 16px; display: flex; align-items: center; gap: 9px; font: var(--fw-semi) 13px/1.3 var(--font-sans); color: #fff; background: linear-gradient(transparent, rgba(8,18,34,.78)); }
.ks-media-cap svg { width: 16px; height: 16px; color: var(--gold); flex: none; }
.ks-media-frame { position: relative; }
.ks-media-frame::before { content: ""; position: absolute; right: -14px; top: -14px; width: 64px; height: 64px; z-index: -1; background: var(--ks-blue-50); clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%); }
.ks-ink .ks-media-frame::before, .lp-hero--ink .ks-media-frame::before { background: rgba(10,132,255,.16); }
.hero-bg-cube { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 0; }
.hero-bg-cube .kc-bg { position: absolute; width: 600px; max-width: none; }
.hero-bg-cube .kc-bg svg { filter: none; }
.hero-bg-cube--wire { opacity: .5; }
.hero-bg-cube--glass { opacity: .85; }
.hero-bg-cube--ghost { opacity: .17; }
.hero-bg-cube--right .kc-bg { right: -110px; top: 50%; transform: translateY(-52%); }
.hero-bg-cube--left .kc-bg { left: -140px; top: 50%; transform: translateY(-52%); }
.hero-bg-cube--tr .kc-bg { right: -120px; top: -130px; }
.hero-bg-cube--br .kc-bg { right: -120px; bottom: -150px; }
.hero-bg-cube--bl .kc-bg { left: -130px; bottom: -150px; }
.hero-bg-cube--tl .kc-bg { left: -130px; top: -130px; }
@media (prefers-reduced-motion: no-preference) {
  .kc-art.kc-anim-drift svg { animation: kcDrift 17s var(--ease-in-out) infinite alternate; }
}
@keyframes kcDrift { from { transform: translateY(0) rotate(-1.2deg); } to { transform: translateY(-14px) rotate(1.2deg); } }
@media (max-width: 991px){ .hero-bg-cube { opacity: .5; } .hero-bg-cube--glass { opacity: .55; } .hero-bg-cube .kc-bg { width: 460px; } }
@media (max-width: 640px){ .hero-bg-cube--wire, .hero-bg-cube--ghost { opacity: .32; } }
.hero-viz { position: relative; width: 100%; max-width: 540px; margin-inline: auto; }
.hero-viz-cube { position: absolute; z-index: 5; width: 124px; pointer-events: none; }
.hero-viz-cube .kc-art svg { filter: drop-shadow(0 16px 22px rgba(6,16,34,.42)); }
.viz { position: relative; background: #fff; border: 1px solid var(--border); border-radius: var(--r-xl); box-shadow: 0 36px 74px -28px rgba(6,16,34,.52), 0 6px 20px rgba(6,16,34,.08); overflow: hidden; }
.viz--ink { background: var(--ink-800); border-color: var(--border-ondark); color: var(--fg-ondark); }
.viz-bar { display: flex; align-items: center; gap: 7px; padding: 13px 16px; border-bottom: 1px solid var(--border); background: var(--slate-50); }
.viz--ink .viz-bar { border-color: var(--border-ondark); background: rgba(255,255,255,.03); }
.viz-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--slate-300); flex: none; }
.viz--ink .viz-dot { background: rgba(255,255,255,.22); }
.viz-tt { margin-left: 8px; font: var(--fw-med) 12px/1 var(--font-mono); color: var(--slate-500); }
.viz--ink .viz-tt { color: var(--fg-ondark-2); }
.viz-body { padding: 18px; }
.viz-row { display: flex; align-items: center; gap: 12px; padding: 11px 13px; border: 1px solid var(--border); border-radius: var(--r-md); margin-bottom: 10px; background: #fff; }
.viz-row:last-child { margin-bottom: 0; }
.viz--ink .viz-row { border-color: var(--border-ondark); background: rgba(255,255,255,.02); }
.viz-ico { width: 34px; height: 34px; border-radius: var(--r-sm); display: grid; place-items: center; flex: none; background: var(--ks-blue-50); color: var(--ks-blue); }
.viz-ico svg { width: 18px; height: 18px; }
.viz--ink .viz-ico { background: rgba(255,255,255,.07); color: var(--ks-blue-bright); }
.viz-ico--gold { background: var(--gold-50); color: var(--gold-deep); }
.viz-t { font: var(--fw-semi) 14px/1.2 var(--font-sans); color: var(--slate-900); }
.viz--ink .viz-t { color: #fff; }
.viz-s { font: var(--fw-med) 12px/1.3 var(--font-sans); color: var(--slate-500); margin-top: 3px; }
.viz--ink .viz-s { color: var(--fg-ondark-2); }
.viz-prog { height: 6px; border-radius: var(--r-pill); background: var(--slate-150); overflow: hidden; flex: 1; }
.viz--ink .viz-prog { background: rgba(255,255,255,.1); }
.viz-prog i { display: block; height: 100%; border-radius: var(--r-pill); background: var(--ks-grad); }
.viz-kpis { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-bottom: 14px; }
.viz-kpi { border: 1px solid var(--border); border-radius: var(--r-md); padding: 13px; }
.viz--ink .viz-kpi { border-color: var(--border-ondark); }
.viz-kpi-n { font: var(--fw-bold) 22px/1 var(--font-sans); letter-spacing: -.03em; color: var(--ks-blue); }
.viz--ink .viz-kpi-n { color: #fff; }
.viz-kpi-n.gold { color: var(--gold-deep); }
.viz--ink .viz-kpi-n.gold { color: var(--gold); }
.viz-kpi-l { font: var(--fw-med) 10.5px/1.2 var(--font-sans); color: var(--slate-500); margin-top: 6px; }
.viz--ink .viz-kpi-l { color: var(--fg-ondark-2); }
.viz-bars { display: flex; gap: 7px; align-items: flex-end; height: 76px; }
.viz-bars i { flex: 1; border-radius: 4px 4px 0 0; background: var(--ks-blue-200); }
.viz-bars i.hi { background: var(--ks-blue); } .viz-bars i.go { background: var(--gold); }
.viz-pill { font: var(--fw-semi) 11px/1 var(--font-sans); padding: 5px 10px; border-radius: var(--r-pill); background: var(--ks-blue-50); color: var(--ks-blue-700); margin-left: auto; flex: none; }
.viz-pill--gold { background: var(--gold-50); color: var(--gold-deep); }
.viz-pill--ok { background: var(--success-bg); color: var(--success); }
@media (max-width: 991px){ .hero-viz { max-width: 460px; } }
@media (prefers-reduced-motion: reduce) { }
.ks-card {
  position: relative; background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--r-lg); padding: 28px; box-shadow: var(--sh-sm);
  transition: box-shadow var(--dur) var(--ease-out), transform var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out);
  height: 100%;
}
.ks-card--hover:hover { box-shadow: var(--sh-lg); transform: translateY(-3px); border-color: var(--slate-300); }
.ks-card--faceted { clip-path: polygon(0 0, calc(100% - 28px) 0, 100% 28px, 100% 100%, 0 100%); }
.ks-card--pad-lg { padding: 36px; }
.ks-card--ink { background: var(--ink-800); border-color: var(--border-ondark); color: var(--fg-ondark); box-shadow: none; }
.ks-card--ink:hover { border-color: rgba(255,255,255,.2); }
.ks-card--ink h3,.ks-card--ink h4 { color: #fff; }
.ks-card--ink p { color: var(--fg-ondark-2); }
.ks-card--gold-edge { border-top: 3px solid var(--gold); }
.ks-card--blue-edge { border-top: 3px solid var(--ks-blue); }
.ks-icon-tile {
  display: inline-grid; place-items: center; width: 52px; height: 52px;
  border-radius: var(--r-md); background: var(--ks-blue-50); color: var(--ks-blue); flex: none;
}
.ks-icon-tile svg { width: 24px; height: 24px; }
.ks-icon-tile--gold { background: var(--gold-50); color: var(--gold-deep); }
.ks-icon-tile--ink { background: rgba(255,255,255,.07); color: var(--ks-blue-bright); }
.ks-icon-tile--lg { width: 64px; height: 64px; }
.ks-icon-tile--lg svg { width: 30px; height: 30px; }
.ks-chip {
  display: inline-flex; align-items: center; gap: 7px; padding: 7px 14px;
  border-radius: var(--r-pill); font: var(--fw-med) 13.5px/1 var(--font-sans);
  background: var(--slate-100); color: var(--slate-700); border: 1px solid var(--border);
}
.ks-chip svg { width: 15px; height: 15px; }
.ks-chip--blue { background: var(--ks-blue-50); color: var(--ks-blue-700); border-color: var(--ks-blue-100); }
.ks-chip--gold { background: var(--gold-50); color: var(--gold-deep); border-color: var(--gold-100); }
.ks-chip--ondark { background: rgba(255,255,255,.07); color: var(--fg-ondark); border-color: var(--border-ondark); }
.ks-stat-num { font: var(--fw-bold) clamp(2.25rem, 1.4rem + 2.6vw, 3.25rem)/1 var(--font-sans); letter-spacing: -.03em; color: var(--ks-blue); }
.ks-ink .ks-stat-num { color: #fff; }
.ks-stat-num--gold { color: var(--gold); }
.ks-stat-label { font: var(--fw-med) var(--fs-sm)/1.4 var(--font-sans); color: var(--fg3); margin-top: 8px; }
.ks-ink .ks-stat-label { color: var(--fg-ondark-2); }
.ks-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.ks-list li { position: relative; padding-left: 30px; color: var(--fg2); font-size: var(--fs-body); line-height: 1.5; }
.ks-list li::before {
  content: ""; position: absolute; left: 0; top: .42em; width: 13px; height: 13px;
  background: var(--ks-grad); clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
}
.ks-list--gold li::before { background: var(--gold-grad); }
.ks-ink .ks-list li { color: var(--fg-ondark-2); }
.ks-cube { display:inline-block; }
.ks-head { display: grid; gap: 16px; }
.ks-head--center { justify-items: center; text-align: center; }
.ks-head--center .ks-lead { max-width: 62ch; }
.ks-nav { position: sticky; top: 0; z-index: 1000; transition: background var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out); border-bottom: 1px solid transparent; }
.ks-nav--light { background: rgba(255,255,255,.82); backdrop-filter: blur(14px); }
.ks-nav--ink { background: rgba(13,27,48,.30); backdrop-filter: blur(14px) saturate(135%); -webkit-backdrop-filter: blur(14px) saturate(135%); }
.ks-nav.is-scrolled.ks-nav--light { background: rgba(255,255,255,.92); border-bottom-color: var(--border); box-shadow: var(--sh-xs); }
.ks-nav.is-scrolled.ks-nav--ink { background: rgba(13,27,48,.42); backdrop-filter: blur(14px) saturate(135%); -webkit-backdrop-filter: blur(14px) saturate(135%); border-bottom-color: var(--border-ondark); }
.ks-nav-inner { display: flex; align-items: center; gap: 28px; height: 74px; }
.ks-nav-logo { display: flex; align-items: center; }
.ks-nav-logo-img { height: 30px; width: auto; display: block; }
.ks-logo { display: inline-flex; align-items: center; gap: 11px; }
.ks-logo-mark { height: 34px; width: auto; display: block; }
.ks-logo-word { display: inline-flex; flex-direction: column; line-height: 1; font: var(--fw-bold) 23px/1 var(--font-sans); letter-spacing: -.03em; }
.ks-logo-sub { font: var(--fw-med) 9.5px/1 var(--font-sans); letter-spacing: 0; text-transform: none; margin-top: 4px; opacity: .65; }
.ks-logo--light .ks-logo-word { color: var(--slate-900); }
.ks-logo--light .ks-logo-sub { color: var(--slate-500); opacity: 1; }
.ks-logo--dark .ks-logo-word { color: #fff; }
.ks-logo--dark .ks-logo-sub { color: var(--fg-ondark-2); opacity: 1; }
.ks-foot-brand .ks-logo-mark { height: 36px; }
.ks-foot-logo { display: inline-block; }
.ks-foot-logo img { height: 38px; width: auto; display: block; }
.ks-mobile-head .ks-logo-mark { height: 30px; }
.ks-mobile-head .ks-logo-word { font-size: 20px; }
.ks-nav-links { display: flex; align-items: center; gap: 4px; margin-left: 8px; }
.ks-nav-link {
  display: inline-flex; align-items: center; gap: 5px; padding: 9px 14px; border-radius: var(--r-sm);
  font: var(--fw-med) 15px/1 var(--font-sans); color: var(--slate-700); cursor: pointer; background: none; border: 0;
  transition: color var(--dur) var(--ease-out), background var(--dur) var(--ease-out);
}
.ks-nav-link svg { width: 15px; height: 15px; opacity: .7; transition: transform var(--dur) var(--ease-out); }
.ks-nav-link:hover { color: var(--ks-blue); background: var(--ks-blue-50); }
.ks-nav-link.is-active { color: var(--ks-blue); }
.ks-nav--ink .ks-nav-link { color: var(--fg-ondark); }
.ks-nav--ink .ks-nav-link:hover { color: #fff; background: rgba(255,255,255,.08); }
.ks-nav--ink .ks-nav-link.is-active { color: var(--ks-blue-bright); }
.ks-nav--ink.is-scrolled .ks-nav-link.is-active { color: var(--ks-blue-bright); }
.ks-nav-cta { margin-left: auto; display: flex; align-items: center; gap: 12px; }
.ks-nav-item { position: relative; }
.ks-nav-item:hover .ks-nav-link svg { transform: rotate(180deg); }
.ks-mega {
  position: absolute; top: calc(100% + 10px); left: 50%; transform: translateX(-50%) translateY(-6px);
  background: #fff; border: 1px solid var(--border); border-radius: var(--r-xl); box-shadow: var(--sh-xl);
  padding: 18px; opacity: 0; visibility: hidden; transition: all var(--dur) var(--ease-out); z-index: 1100;
}
.ks-nav-item:hover .ks-mega { opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0); }
.ks-mega-grid { display: grid; gap: 8px; }
.ks-mega--2 { width: 740px; }
.ks-mega--2 .ks-mega-grid { grid-template-columns: 1fr 1fr; column-gap: 18px; }
.ks-mega--1 { width: 400px; }
.ks-mega-link { display: flex; gap: 16px; align-items: flex-start; padding: 16px 18px; border-radius: var(--r-md); transition: background var(--dur) var(--ease-out); }
.ks-mega-link:hover { background: var(--slate-50); }
.ks-mega-link .ks-icon-tile { width: 44px; height: 44px; display: grid; place-items: center; }
.ks-mega-link .ks-icon-tile svg { width: 21px; height: 21px; display: block; }
.ks-mega-link > span { display: flex; flex-direction: column; min-width: 0; }
.ks-mega-title { display: block; font: var(--fw-semi) 15px/1.3 var(--font-sans); color: var(--fg1); margin-bottom: 5px; }
.ks-mega-desc { display: block; font: var(--fw-reg) 13px/1.5 var(--font-sans); color: var(--fg3); text-wrap: pretty; }
.ks-mega-foot { margin-top: 12px; padding: 16px 18px; border-radius: var(--r-md); background: var(--slate-50); display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.ks-burger { display: none; margin-left: auto; background: none; border: 0; cursor: pointer; padding: 8px; color: var(--slate-900); }
.ks-nav--ink .ks-burger { color: #fff; }
.ks-burger svg { width: 26px; height: 26px; }
.ks-mobile { position: fixed; inset: 0; z-index: 1200; background: var(--ink); color: #fff; padding: 24px var(--gutter); overflow-y: auto; transform: translateX(100%); transition: transform var(--dur-slow) var(--ease-out); }
.ks-mobile.is-open { transform: none; }
.ks-mobile-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; }
.ks-mobile-head img { height: 28px; }
.ks-mobile-close { background: none; border: 0; color: #fff; cursor: pointer; padding: 6px; }
.ks-mobile-group { border-bottom: 1px solid var(--border-ondark); padding: 14px 0; }
.ks-mobile-group > span { display: block; font: var(--fw-semi) 13px/1 var(--font-sans); letter-spacing: 0; text-transform: none; color: var(--gold); margin-bottom: 12px; }
.ks-mobile-link { display: block; padding: 9px 0; color: var(--fg-ondark); font-size: 16px; }
.ks-mobile-link:hover { color: #fff; }
.ks-mobile-group.is-active > span { color: var(--ks-blue-bright); }
.ks-mobile-link.is-active { color: #fff; font-weight: 600; }
@media (max-width: 1080px) {
  .ks-nav-links { display: none; }
  .ks-burger { display: inline-flex; }
  .ks-nav-cta .ks-btn--secondary { display: none; }
}
.ks-foot { position: relative; background: var(--ink); color: var(--fg-ondark-2); overflow: hidden; }
.ks-foot > * { position: relative; z-index: 1; }
.ks-foot::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: .07;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='112'%20height='128'%20viewBox='0%200%20112%20128'%3E%3Cg%20fill='none'%20stroke='%23ffffff'%20stroke-opacity='0.8'%3E%3Cpath%20d='M56%2030L88%2048L88%2082L56%20100L24%2082L24%2048Z'/%3E%3Cpath%20d='M56%2030L56%2065'/%3E%3Cpath%20d='M56%2065L88%2082'/%3E%3Cpath%20d='M56%2065L24%2082'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 112px 128px;
  -webkit-mask-image: radial-gradient(70% 90% at 92% 100%, #000, transparent 64%);
  mask-image: radial-gradient(70% 90% at 92% 100%, #000, transparent 64%);
}
.ks-foot-cube { position: absolute; right: -10px; bottom: -18px; width: 210px; opacity: .9; pointer-events: none; z-index: 0; }
.ks-foot-cube svg { width: 100%; height: auto; display: block; filter: drop-shadow(0 22px 30px rgba(4,12,28,.45)); }
.ks-foot-top { padding-block: clamp(56px, 7vw, 88px); position: relative; }
.ks-foot-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 40px; }
.ks-foot-brand img { height: 30px; margin-bottom: 20px; }
.ks-foot h5 { font: var(--fw-semi) 13px/1 var(--font-sans); letter-spacing: 0; text-transform: none; color: #fff; margin-bottom: 18px; }
.ks-foot-links { display: grid; gap: 11px; }
.ks-foot-links a { color: var(--fg-ondark-2); font-size: 14.5px; }
.ks-foot-links a:hover { color: #fff; }
.ks-foot-seo { position: relative; z-index: 1; border-top: 1px solid var(--border-ondark); padding-block: 40px 12px; }
.ks-foot-seo h4 { font: var(--fw-semi) 13px/1 var(--font-sans); letter-spacing: 0; text-transform: none; color: var(--gold); margin-bottom: 8px; }
.ks-foot-seo .lead { font: var(--fw-reg) 14.5px/1.55 var(--font-sans); color: var(--fg-ondark-2); margin-bottom: 28px; max-width: 64ch; }
.ks-foot-seo-grid { display: flex; flex-direction: column; gap: 22px; }
.ks-foot-seo-col { display: grid; gap: 12px; }
.ks-foot-seo-col h5 { display: flex; align-items: center; gap: 10px; font: var(--fw-semi) 13px/1 var(--font-sans); letter-spacing: 0; text-transform: none; color: #fff; margin: 0; }
.ks-foot-seo-col h5::before { content: ""; width: 12px; height: 12px; flex: none; background: var(--gold-grad); clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%); box-shadow: 0 0 0 4px rgba(245,179,50,.1); }
.ks-foot-seo-links { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 0; }
.ks-foot-seo-links a { position: relative; color: var(--fg-ondark-2); font: var(--fw-reg) 14.5px/1.4 var(--font-sans); padding: 5px 22px 5px 0; transition: color var(--dur) var(--ease-out); }
.ks-foot-seo-links a:not(:last-child)::after { content: ""; position: absolute; right: 9px; top: 50%; width: 6px; height: 6px; transform: translateY(-50%) rotate(45deg); background: var(--ks-blue-bright); opacity: .42; border-radius: 1px; transition: opacity var(--dur) var(--ease-out), transform var(--dur) var(--ease-out); }
.ks-foot-seo-links a:hover { color: #fff; }
.ks-foot-seo-links a:hover::after { opacity: .9; transform: translateY(-50%) rotate(45deg) scale(1.25); }
@media (max-width: 600px){ .ks-foot-seo-links a { padding-right: 20px; } }
.ks-foot-offices { position: relative; z-index: 1; border-top: 1px solid var(--border-ondark); padding-block: 34px; display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.ks-office { position: relative; overflow: hidden; padding: 26px 28px; border: 1px solid var(--border-ondark); border-radius: var(--r-lg); background: linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.015)); transition: border-color var(--dur) var(--ease-out), background var(--dur) var(--ease-out), transform var(--dur) var(--ease-out); clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 22px, 100% 100%, 0 100%); }
.ks-office:hover { border-color: rgba(255,255,255,.22); background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.02)); transform: translateY(-3px); }
.ks-office::after { content: ""; position: absolute; top: 0; right: 0; width: 22px; height: 22px; background: var(--ks-blue-bright); opacity: .25; clip-path: polygon(100% 0, 100% 100%, 0 0); transition: opacity var(--dur) var(--ease-out); }
.ks-office--head::after { background: var(--gold); }
.ks-office:hover::after { opacity: .6; }
.ks-office-mark { display: grid; place-items: center; width: 46px; height: 46px; border-radius: var(--r-md); flex: none; margin-bottom: 18px; }
.ks-office-mark svg { width: 23px; height: 23px; }
.ks-office--head .ks-office-mark { background: rgba(245,179,50,.14); color: var(--gold); box-shadow: inset 0 0 0 1px rgba(245,179,50,.25); }
.ks-office--branch .ks-office-mark { background: rgba(10,132,255,.16); color: var(--ks-blue-bright); box-shadow: inset 0 0 0 1px rgba(10,132,255,.28); }
.ks-office-tag { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.ks-office-label { font: var(--fw-semi) 11.5px/1.3 var(--font-sans); letter-spacing: 0; text-transform: none; }
.ks-office--head .ks-office-label { color: var(--gold); }
.ks-office--branch .ks-office-label { color: var(--ks-blue-bright); }
.ks-office-flag { margin-left: auto; font: var(--fw-semi) 10.5px/1 var(--font-sans); letter-spacing: 0; text-transform: none; color: var(--fg-ondark-2); border: 1px solid var(--border-ondark); border-radius: var(--r-pill); padding: 5px 11px; flex: none; }
.ks-office-name { font: var(--fw-bold) 18px/1.25 var(--font-sans); letter-spacing: -.012em; color: #fff; margin-bottom: 12px; }
.ks-office-addr { font: var(--fw-reg) 14px/1.7 var(--font-sans); font-style: normal; color: var(--fg-ondark-2); margin: 0; padding-top: 12px; border-top: 1px solid var(--border-ondark); }
@media (max-width: 720px){ .ks-foot-offices { grid-template-columns: 1fr; gap: 16px; padding-block: 26px; } }
.ks-foot-bottom { border-top: 1px solid var(--border-ondark); padding-block: 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.ks-foot-bottom span { font-size: 13.5px; color: var(--fg-ondark-2); }
.ks-foot-legal { display: flex; align-items: center; gap: 12px; }
.ks-foot-legal a { font: var(--fw-med) 13.5px/1 var(--font-sans); color: var(--fg-ondark-2); transition: color var(--dur) var(--ease-out); }
.ks-foot-legal a:hover { color: #fff; }
.ks-foot-legal-sep { color: var(--slate-600); }
.ks-foot-social { display: flex; gap: 10px; }
.ks-foot-social a { display: grid; place-items: center; width: 38px; height: 38px; border-radius: var(--r-sm); background: rgba(255,255,255,.06); color: var(--fg-ondark); }
.ks-foot-social a:hover { background: rgba(255,255,255,.14); color: #fff; }
.ks-foot-social svg { width: 18px; height: 18px; }
@media (max-width: 860px) { .ks-foot-grid { grid-template-columns: 1fr 1fr; gap: 32px; } }
@media (max-width: 520px) { .ks-foot-grid { grid-template-columns: 1fr; } }
.ks-reveal { opacity: 0; transform: translateY(16px); }
.ks-reveal.is-in { opacity: 1; transform: none; transition: opacity .6s var(--ease-out), transform .6s var(--ease-out); }
@media (prefers-reduced-motion: reduce) {
  .ks-reveal { opacity: 1 !important; transform: none !important; }
  html { scroll-behavior: auto; }
}
100% { transform: none; } }
@media (prefers-reduced-motion: no-preference) {
  .ks-lock { animation: ksLock 1s var(--ease-out) both; }
}
.ks-toast { position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%) translateY(20px); z-index: 2200; background: var(--ink); color: #fff; padding: 14px 22px; border-radius: var(--r-pill); box-shadow: var(--sh-xl); font: var(--fw-med) 14px/1 var(--font-sans); opacity: 0; transition: all var(--dur) var(--ease-out); display: flex; align-items: center; gap: 10px; }
.ks-toast svg { width: 17px; height: 17px; color: var(--gold); }
.ks-toast.is-show { opacity: 1; transform: translateX(-50%) translateY(0); }
.ks-grid { display: grid; gap: 24px; }
.ks-grid-2 { grid-template-columns: repeat(2, 1fr); }
.ks-grid-3 { grid-template-columns: repeat(3, 1fr); }
.ks-grid-4 { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1024px) { .ks-grid-4 { grid-template-columns: repeat(2, 1fr); } .ks-grid-3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 700px) { .ks-grid-2, .ks-grid-3, .ks-grid-4 { grid-template-columns: 1fr; } }
.ks-flow > * + * { margin-top: var(--sp-5); }
.ks-cluster { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }
.ks-art-shadow { filter: drop-shadow(0 40px 60px rgba(8,20,40,.35)); }
.ks-ink .ks-art-shadow { filter: drop-shadow(0 40px 60px rgba(8,20,40,.55)); }
body:has(:is(#lp-root, #art-root, #cs-root, #of-root):empty) > .ks-foot,
body:has(:is(#lp-root, #art-root, #cs-root, #of-root):empty) .ks-foot-lift ~ .ks-foot { visibility: hidden; }
/* flow.css */
@keyframes ifFlow { from { background-position: -40% 0; } to { background-position: 140% 0; } }
@keyframes knUp { from { transform: translate3d(0,0,0); } to { transform: translate3d(0,-50%,0); } }
@keyframes knDown { from { transform: translate3d(0,-50%,0); } to { transform: translate3d(0,0,0); } }
@keyframes knLeft { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }
@keyframes knRight { from { transform: translate3d(-50%,0,0); } to { transform: translate3d(0,0,0); } }
.ks-section + .ks-section::before, .ks-section + .ks-section-sm::before, .ks-section-sm + .ks-section::before, .ks-section + .ks-section::after, .ks-section + .ks-section-sm::after, .ks-section-sm + .ks-section::after { content: none !important; display: none !important; }
.kn-host { position: relative; isolation: isolate; }
.kn-field { position: absolute; inset: -14% -6%; z-index: 0; display: flex; gap: clamp(10px, 1.1vw, 16px); justify-content: center; pointer-events: none; transform: rotate(-5deg) scale(1.06); transform-origin: 50% 50%; }
.kn-col { flex: 1 1 0; min-width: 0; max-width: 300px; overflow: hidden; contain: paint; }
.kn-track { display: flex; flex-direction: column; gap: clamp(10px, 1.1vw, 16px); will-change: transform; animation: knUp var(--kn-dur, 56s) linear infinite; }
.kn-col:nth-child(even) .kn-track { animation-name: knDown; }
.kn-tile { position: relative; flex: none; border-radius: var(--r-lg); overflow: hidden; background: var(--kn-bg, linear-gradient(135deg, #E0E7FF, #F5F3FF)); contain: paint; }
.kn-tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.kn-tile--photo { aspect-ratio: 4 / 3; } .kn-tile--tall { aspect-ratio: 3 / 4; } .kn-tile--ui { aspect-ratio: 4 / 3; background: #fff; border: 1px solid var(--border); }
.kn-tile--ui .bar { display: flex; gap: 5px; padding: 9px 11px; border-bottom: 1px solid var(--slate-150); } .kn-tile--ui .bar i { width: 7px; height: 7px; border-radius: 50%; background: var(--slate-200); }
.kn-tile--ui .body { padding: 10px 11px; display: grid; gap: 7px; } .kn-tile--ui .ln { height: 7px; border-radius: 4px; background: var(--slate-150); } .kn-tile--ui .ln.w1 { width: 62%; } .kn-tile--ui .ln.w2 { width: 84%; } .kn-tile--ui .ln.hi { background: var(--ks-grad); width: 42%; }
.kn-tile--ui .chart { display: flex; align-items: flex-end; gap: 4px; height: 38%; padding: 0 11px 11px; position: absolute; left: 0; right: 0; bottom: 0; } .kn-tile--ui .chart i { flex: 1; border-radius: 3px 3px 0 0; background: linear-gradient(180deg, #0A84FF, #0033EE); opacity: .85; } .kn-tile--ui .chart i:nth-child(3n) { background: linear-gradient(180deg, #FF9A76, #F0754C); }
.kn-tile--ui .tag { display: none !important; }
.kn-tile--word { aspect-ratio: 4 / 3; background: var(--kn-bg, var(--ks-grad)); }
.kn-tile--word small, .kn-tile--word b { display: none !important; } .kn-tile--word b { display: block; margin-top: 4px; font-family: var(--font-display); font-weight: 600; font-size: clamp(13px, 1.1vw, 17px); letter-spacing: -.02em; line-height: 1.15; }
.kn-veil { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.kn-hero { position: relative; overflow: hidden; background: #fff !important; background-image: none !important; isolation: isolate; }
.kn-hero > .ks-container-wide, .kn-hero > .ks-container, .kn-hero > .row, .kn-hero > .container { position: relative; z-index: 2; }
.kn-hero .kn-veil { background: linear-gradient(90deg, #fff 0%, #fff 26%, rgba(255,255,255,.9) 42%, rgba(255,255,255,.52) 62%, rgba(255,255,255,.46) 100%), linear-gradient(180deg, #fff 0%, rgba(255,255,255,0) 16%, rgba(255,255,255,0) 70%, #fff 100%), radial-gradient(60% 70% at 84% 30%, rgba(124,58,237,.12), transparent 70%), radial-gradient(40% 50% at 58% 100%, rgba(255,154,118,.14), transparent 70%); }
@media (max-width: 991px) { .kn-hero .kn-veil { background: linear-gradient(180deg, #fff 0%, rgba(255,255,255,.94) 48%, rgba(255,255,255,.62) 78%, rgba(255,255,255,.5) 100%), linear-gradient(180deg, #fff 0%, rgba(255,255,255,0) 14%, rgba(255,255,255,0) 84%, #fff 100%); } .kn-field { transform: rotate(-4deg) scale(1.1); } }
.kn-hero h1, .kn-hero .ks-display, .kn-hero .ks-h1, .kn-hero h2, .kn-hero .ks-h2 { color: var(--ink) !important; } .kn-hero .ks-lead, .kn-hero .ks-body, .kn-hero p { color: var(--fg2); }
.kn-marquee { position: relative; z-index: 2; margin-top: clamp(40px, 5vw, 72px); padding: 22px 0 24px; border-top: 1px solid var(--rule); background: rgba(255,255,255,.82); }
.kn-marquee-viewport { overflow: hidden; -webkit-mask: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.kn-marquee-label { position: absolute; left: var(--gutter); top: -9px; padding: 0 8px; background: #fff; font-family: var(--font-sans); font-size: 13px; letter-spacing: 0; text-transform: none; color: var(--slate-400); }
.kn-marquee-track { display: flex; align-items: center; gap: clamp(40px, 5vw, 84px); width: max-content; animation: knLeft 90s linear infinite; will-change: transform; }
.kn-marquee:hover .kn-marquee-track { animation-play-state: paused; }
.kn-logo { display: inline-flex; align-items: center; gap: 11px; white-space: nowrap; color: var(--slate-600); opacity: .9; filter: saturate(.35); transition: filter var(--dur) var(--ease-out), opacity var(--dur) var(--ease-out), color var(--dur) var(--ease-out); }
.kn-logo:hover { color: var(--ink); opacity: 1; filter: none; }
.kn-logo svg { width: 28px; height: 28px; flex: none; }
.kn-logo .m1 { fill: #0A5BF0; } .kn-logo .m2 { fill: #7C3AED; } .kn-logo .m3 { fill: #FF9A76; } .kn-logo .s1 { stroke: #0A5BF0; } .kn-logo .s3 { stroke: #FF9A76; }
.kn-logo span { font-family: var(--font-display); font-weight: 700; font-size: 17px; letter-spacing: -.028em; line-height: 1; }
.kn-logo--serif span { font-family: Georgia, "Times New Roman", serif; font-weight: 700; letter-spacing: -.005em; font-size: 18px; }
.kn-logo--caps span { font-weight: 800; font-size: 13px; letter-spacing: 0; text-transform: none; }
.kn-logo--light span { font-weight: 500; font-size: 18px; letter-spacing: -.02em; }
.kn-logo--mono span { font-family: var(--font-sans); font-weight: 500; font-size: 14.5px; letter-spacing: 0; }
.kn-logo--tile svg { width: 30px; height: 30px; }
.kn-hero--horizon .kn-field { inset: auto -4% -6% -4%; height: 46%; flex-direction: column; transform: rotate(-2.5deg); gap: 12px; justify-content: flex-end; }
.kn-hero--horizon .kn-col { max-width: none; flex: none; height: 50%; }
.kn-hero--horizon .kn-track { flex-direction: row; height: 100%; width: max-content; animation-name: knRight; }
.kn-hero--horizon .kn-col:nth-child(even) .kn-track { animation-name: knLeft; }
.kn-hero--horizon .kn-tile { height: 100%; width: auto; aspect-ratio: 16 / 10; }
.kn-hero--horizon .kn-veil { background: linear-gradient(180deg, #fff 0%, #fff 34%, rgba(255,255,255,.8) 56%, rgba(255,255,255,.45) 78%, #fff 100%), linear-gradient(90deg, rgba(255,255,255,.9), rgba(255,255,255,0) 40%), radial-gradient(50% 60% at 82% 0%, rgba(10,91,240,.12), transparent 70%); }
.kn-hero--beam .kn-veil { background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.6) 55%, rgba(255,255,255,.3) 100%), linear-gradient(180deg, rgba(255,255,255,0) 70%, #fff 100%); }
.kn-hero--beam .kn-beam i { width: 26%; filter: blur(34px); animation-duration: 22s; }
.kn-hero--beam .kn-current i { opacity: .8; }
.kn-hero--column .kn-field { inset: -10% -2% -10% auto; width: clamp(200px, 22vw, 320px); transform: rotate(0); justify-content: flex-end; }
.kn-hero--column .kn-col { max-width: none; }
.kn-hero--column .kn-veil { background: linear-gradient(90deg, #fff 0%, #fff 62%, rgba(255,255,255,.7) 76%, rgba(255,255,255,.45) 100%), linear-gradient(180deg, #fff 0%, rgba(255,255,255,0) 18%, rgba(255,255,255,0) 82%, #fff 100%); }
@media (max-width: 991px) { .kn-hero--column .kn-field { width: 44vw; } .kn-hero--column .kn-veil { background: linear-gradient(90deg, #fff 0%, #fff 40%, rgba(255,255,255,.75) 62%, rgba(255,255,255,.5) 100%), linear-gradient(180deg, #fff 0%, rgba(255,255,255,0) 18%, rgba(255,255,255,0) 82%, #fff 100%); } }
.kn-hero--wash .kn-current i { opacity: .9; filter: blur(90px); }
.kn-hero--wash .kn-veil { background: linear-gradient(180deg, rgba(255,255,255,0) 60%, #fff 100%); }
.kn-hero .crumb, .kn-hero .crumb a, .kn-hero .crumb span, .kn-hero .ks-crumb, .kn-hero .ks-crumb a { color: var(--fg2) !important; } .kn-hero .crumb .cur, .kn-hero .crumb a:hover, .kn-hero .ks-crumb .cur { color: var(--ink) !important; }
.kn-hero .ks-wedge, .kn-hero .ks-wedge--ondark, .kn-hero .ks-eyebrow { color: var(--violet) !important; }
.kn-hero .ks-btn--ondark, .kn-hero .ks-btn--secondary, .kn-hero .ks-btn--ghost { background: #fff !important; border-color: var(--border-strong) !important; color: var(--ink) !important; box-shadow: none !important; }
.kn-hero .ks-btn--ondark:hover, .kn-hero .ks-btn--secondary:hover, .kn-hero .ks-btn--ghost:hover { border-color: var(--ink) !important; color: var(--ink) !important; }
.kn-hero .ks-mono, .kn-hero small, .kn-hero .ks-sm { color: var(--fg3) !important; }
.kn-hero .ks-list li, .kn-hero .ks-list li span, .kn-hero li { color: var(--fg2) !important; }
.kn-hero .ks-icon-tile { background: var(--ks-blue-50) !important; border-color: var(--ks-blue-100) !important; color: var(--ks-blue) !important; }
.ks-ink { position: relative; overflow: hidden; color: var(--fg1) !important; background: #F6F6FE !important; background-image: none !important; isolation: isolate; }
@keyframes knDriftA { 0% { transform: translate3d(-6%, -4%, 0) scale(1); } 50% { transform: translate3d(8%, 6%, 0) scale(1.08); } 100% { transform: translate3d(-6%, -4%, 0) scale(1); } }
@keyframes knDriftB { 0% { transform: translate3d(6%, 8%, 0) scale(1.05); } 50% { transform: translate3d(-8%, -6%, 0) scale(.95); } 100% { transform: translate3d(6%, 8%, 0) scale(1.05); } }
@keyframes knDriftC { 0% { transform: translate3d(0, 10%, 0); } 50% { transform: translate3d(-4%, -8%, 0); } 100% { transform: translate3d(0, 10%, 0); } }
.kn-current { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.kn-current i { position: absolute; border-radius: 50%; filter: blur(80px); opacity: .55; will-change: transform; }
.kn-current i:nth-child(1) { width: 62vw; height: 42vw; left: -10%; top: -30%; background: radial-gradient(ellipse at center, rgba(10,91,240,.22), rgba(10,91,240,0) 70%); animation: knDriftA 26s ease-in-out infinite; }
.kn-current i:nth-child(2) { width: 46vw; height: 46vw; right: -12%; top: 0; background: radial-gradient(circle, rgba(124,58,237,.16), rgba(124,58,237,0) 70%); animation: knDriftB 32s ease-in-out infinite; }
.kn-current i:nth-child(3) { width: 40vw; height: 34vw; left: 30%; bottom: -36%; background: radial-gradient(ellipse, rgba(255,154,118,.2), rgba(255,154,118,0) 70%); animation: knDriftC 28s ease-in-out infinite; }
.ks-ink .kn-veil { background: linear-gradient(180deg, #F6F6FE 0%, rgba(246,246,254,0) 22%, rgba(246,246,254,0) 78%, #F6F6FE 100%); }
.ks-ink > .ks-container-wide, .ks-ink > .ks-container { position: relative; z-index: 2; }
.ks-ink h1, .ks-ink .ks-h1, .ks-ink .ks-h2, .ks-ink .ks-h3, .ks-ink .ks-display, .ks-ink h2, .ks-ink h3, .ks-ink h4, .ks-ink b, .ks-ink .ks-stat-num { color: var(--ink) !important; } .ks-ink .ks-lead, .ks-ink .ks-body, .ks-ink p, .ks-ink .ks-sm, .ks-ink li, .ks-ink span { color: var(--fg2) !important; }
.ks-ink .ks-wedge, .ks-wedge--ondark { color: var(--violet) !important; } .ks-ink .ks-mono { color: var(--slate-400) !important; }
.ks-ink .ks-card, .ks-card--ink { background: rgba(255,255,255,.92) !important; border-color: var(--border) !important; color: var(--fg1) !important; } .ks-ink .ks-card:hover, .ks-card--ink:hover { border-color: var(--ks-blue-200) !important; box-shadow: var(--sh-md) !important; }
.ks-ink .ks-card p, .ks-card--ink p { color: var(--fg2) !important; } .ks-ink .ks-card b, .ks-ink .ks-card h3, .ks-card--ink b, .ks-card--ink h3 { color: var(--ink) !important; }
.ks-ink .ks-icon-tile { background: #fff !important; border-color: var(--ks-blue-100) !important; color: var(--ks-blue) !important; }
.ks-ink .ks-btn--secondary, .ks-ink .ks-btn--ghost, .ks-ink .ks-btn--ondark { background: #fff !important; border-color: var(--border-strong) !important; color: var(--ink) !important; } .ks-ink .ks-btn--secondary:hover, .ks-ink .ks-btn--ghost:hover, .ks-ink .ks-btn--ondark:hover { border-color: var(--ink) !important; color: var(--ink) !important; }
.ks-ink .ks-list li::before { background: var(--violet) !important; } .ks-ink .ks-grad-text { background: var(--flow-grad) !important; background-size: 200% 100% !important; }
@keyframes knBeam { 0% { transform: translateX(-30%) skewX(-18deg); opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { transform: translateX(130%) skewX(-18deg); opacity: 0; } }
.ks-ink.cta, .kn-cta { background: #fff !important; }
.ks-ink.cta .kn-veil, .kn-cta .kn-veil { background: linear-gradient(180deg, #fff 0%, rgba(255,255,255,0) 20%, rgba(255,255,255,0) 80%, #fff 100%); }
.kn-beam { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.kn-beam i { position: absolute; top: -20%; bottom: -20%; width: 22%; left: 0; background: linear-gradient(90deg, rgba(10,91,240,0), rgba(10,91,240,.16) 30%, rgba(124,58,237,.18) 50%, rgba(255,154,118,.16) 70%, rgba(255,154,118,0)); filter: blur(28px); animation: knBeam 16s var(--ease-in-out) infinite; }
.kn-beam i:nth-child(2) { width: 10%; animation-duration: 21s; animation-delay: -9s; opacity: .7; }
.ks-ink.cta .kn-current i, .kn-cta .kn-current i { opacity: .8; }
.ks-ink.cta .ks-btn--ondark, .kn-cta .ks-btn--ondark { background: var(--ks-grad) !important; background-size: 160% 100% !important; border-color: transparent !important; color: #fff !important; transition: background-position .6s var(--ease-out), transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out) !important; }
.ks-ink.cta .ks-btn--ondark:hover, .kn-cta .ks-btn--ondark:hover { background-position: 100% 0 !important; box-shadow: 0 14px 30px -14px rgba(10,91,240,.55) !important; transform: translateY(-1px); color: #fff !important; }
.ks-ashlar, .ks-ashlar::before, .ks-ashlar::after { background-image: none !important; } .ks-glow, .kc-art, .hero-bg-cube, .ks-prism, .ks-refract, .ks-beam, .if-hero-bg, .if-ink-photo, .rs-lines { display: none !important; }
.kn-band { position: relative; height: 150px; overflow: hidden; -webkit-mask: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.kn-band::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, var(--bg-subtle), rgba(247,247,253,.35) 40%, rgba(247,247,253,.35) 60%, var(--bg-subtle)); }
.kn-row { display: flex; gap: 12px; width: max-content; animation: knLeft 70s linear infinite; padding: 0 0 12px; } .kn-row:nth-child(2) { animation-name: knRight; animation-duration: 84s; }
.kn-row .kn-tile { width: 128px; aspect-ratio: 16 / 10; border-radius: var(--r-md); box-shadow: none; } .kn-row .kn-tile--word b { font-size: 11px; } .kn-row .kn-tile--word small { font-size: 7.5px; }
@media (max-width: 760px) { .kn-band { height: 118px; } .kn-row .kn-tile { width: 104px; } }
@media (prefers-reduced-motion: reduce) { .kn-track, .kn-marquee-track, .kn-row, .kn-field { animation: none !important; } }
.ks-display, .ks-h1, .ks-h2, .ks-h3, .ks-h4, h1, h2, h3, h4, .lp-hero h1, .lp-sec h2, .ar-hero h1, .ar-body h2, .ar-body h3 { font-family: var(--font-display) !important; }
.ks-display { font-weight: 600 !important; letter-spacing: var(--tracking-display) !important; line-height: var(--lh-tight) !important; }
.ks-h1, .ks-h2 { font-weight: 600 !important; letter-spacing: var(--tracking-head) !important; } .ks-h3, .ks-h4 { font-weight: 600 !important; letter-spacing: -.018em !important; }
body, p, li, input, button, select, textarea, .ks-body, .ks-lead, .ks-sm { font-family: var(--font-sans); }
@keyframes rsPulse { 0%, 100% { transform: scale(1); opacity: .9; } 50% { transform: scale(1.35); opacity: .35; } }
@keyframes rsLight { 0% { background-position: 0% 50%; } 100% { background-position: 200% 50%; } }
@keyframes rsSheen { from { transform: translateX(-130%) skewX(-18deg); } to { transform: translateX(230%) skewX(-18deg); } }
.ks-wedge, .ks-eyebrow, .lp-eyebrow { display: inline-flex !important; align-items: center; gap: 0; background: none !important; border: 0 !important; padding: 0 !important; box-shadow: none !important; clip-path: none !important; font-family: var(--font-sans) !important; font-weight: 600 !important; font-size: 13px !important; letter-spacing: .02em !important; text-transform: none !important; color: var(--ks-blue) !important; line-height: 1.3; }
.ks-wedge::before, .ks-eyebrow::before, .ks-wedge::after, .ks-eyebrow::after { content: none !important; display: none !important; }
.ks-wedge--gold { color: var(--gold-deep) !important; } .ks-wedge--ondark, .ks-ink .ks-wedge { color: var(--violet) !important; }
.ks-nav, .ks-nav.ks-nav--ink, .ks-nav.is-scrolled, .ks-nav.is-scrolled.ks-nav--ink { background: rgba(255,255,255,.86) !important; border-bottom: 1px solid transparent !important; box-shadow: none !important; backdrop-filter: blur(18px) saturate(160%); -webkit-backdrop-filter: blur(18px) saturate(160%); transition: border-color var(--dur) var(--ease-out); }
.ks-nav.is-scrolled { border-bottom-color: var(--rule) !important; }
.ks-nav-inner { min-height: 72px; }
.ks-nav-logo { display: flex; align-items: center; } .ks-nav-logo::before, .ks-nav-logo::after { content: none !important; display: none !important; }
.ks-nav-logo-img { display: block !important; height: 30px; width: auto; filter: none !important; }
.ks-nav-link, .ks-nav--ink .ks-nav-link { color: var(--slate-700) !important; font-weight: 500; font-size: 14.5px; position: relative; padding: 8px 10px; border-radius: var(--r-sm); transition: background var(--dur) var(--ease-out), color var(--dur) var(--ease-out); }
.ks-nav-link:hover, .ks-nav-link.is-active { color: var(--ink) !important; background: var(--slate-100); }
.ks-nav-link.is-active::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: 2px; height: 2px; border-radius: 2px; background: var(--flow-grad); }
.ks-burger, .ks-nav--ink .ks-burger { color: var(--ink) !important; border-color: var(--border) !important; background: transparent !important; }
.ks-mega, .ks-mega-panel { background: rgba(255,255,255,.97) !important; border: 1px solid var(--border) !important; border-radius: var(--r-lg) !important; box-shadow: var(--sh-lg) !important; }
.ks-mega-item, .ks-mega-link { color: var(--slate-700) !important; border-radius: var(--r-sm) !important; transition: background var(--dur) var(--ease-out), transform var(--dur) var(--ease-out); }
.ks-mega-item:hover, .ks-mega-link:hover { background: var(--ks-blue-50) !important; color: var(--ink) !important; transform: translateX(3px); }
.ks-mega-item h5, .ks-mega-title { color: var(--ink) !important; } .ks-mega-label { font-family: var(--font-sans) !important; letter-spacing: 0; color: var(--slate-400) !important; font-size: 13px !important; }
.if-nav-flow { display: none !important; }
.ks-mobile { background: #fff !important; } .ks-mobile-head { border-bottom: 1px solid var(--rule); }
.ks-mobile-head .ks-logo { position: relative; display: block; width: 136px; height: 26px; overflow: hidden; } .ks-mobile-head .ks-logo-mark, .ks-mobile-head .ks-logo-word { display: none !important; }
.ks-mobile-head .ks-logo::after { content: ""; position: absolute; inset: 0; background: url("../logos/keystone-logo-onlight.webp") left center / auto 26px no-repeat; filter: none; }
.ks-mobile-close { color: var(--ink) !important; background: transparent !important; }
.ks-mobile-label, .ks-mobile-group > span { color: var(--slate-400) !important; font-family: var(--font-sans) !important; font-size: 13px !important; letter-spacing: 0; text-transform: none; }
.ks-mobile-link { color: var(--ink) !important; font-weight: 500; } .ks-mobile-link.is-active, .ks-mobile-link:hover { color: var(--ks-blue) !important; }
.ks-mobile .ks-btn--gold, .ks-mobile .ks-btn--primary, .ks-mobile [data-ks-book] { background: var(--ks-grad) !important; border-color: transparent !important; color: #fff !important; }
.ks-btn { position: relative; overflow: hidden; border-radius: var(--r-pill) !important; font-weight: 600 !important; letter-spacing: -.005em; border-width: 1px !important; box-shadow: none !important; transition: background var(--dur) var(--ease-out), color var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out), transform var(--dur) var(--ease-out) !important; }
.ks-btn svg { transition: none; }
.ks-btn::after { content: ""; position: absolute; top: -20%; bottom: -20%; left: 0; width: 34%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent); transform: translateX(-130%) skewX(-18deg); pointer-events: none; }
.ks-btn:hover::after { animation: rsSheen .9s var(--ease-flow) forwards; }
.ks-btn--primary { background: var(--ks-grad) !important; background-size: 160% 100% !important; border-color: transparent !important; color: #fff !important; transition: background-position .6s var(--ease-out), transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out) !important; } .ks-btn--primary:hover { background-position: 100% 0 !important; box-shadow: 0 14px 30px -14px rgba(10,91,240,.55) !important; transform: translateY(-1px); }
.ks-btn--secondary, .ks-btn--ghost { background: #fff !important; border-color: var(--border-strong) !important; color: var(--ink) !important; } .ks-btn--secondary:hover, .ks-btn--ghost:hover { border-color: var(--ink) !important; color: var(--ink) !important; background: #fff !important; }
.ks-btn--gold { background: var(--gold) !important; border-color: var(--gold) !important; color: var(--ink) !important; } .ks-btn--gold:hover { background: var(--gold-600) !important; border-color: var(--gold-600) !important; }
.ks-btn--ondark { background: #fff !important; border-color: #fff !important; color: var(--ink) !important; } .ks-btn--ondark:hover { background: var(--ks-blue-50) !important; }
.ks-card, .ks-slot, .lp-card, .lp-tile, .ar-card, .ew-card, .ct-channel, .if-card { position: relative; overflow: hidden; background: #fff !important; --kn-x: 0; border: 1px solid var(--border) !important; border-radius: var(--r-xl) !important; clip-path: none !important; box-shadow: none !important; transition: border-color var(--dur) var(--ease-out), transform var(--dur-slow) var(--ease-out), box-shadow var(--dur-slow) var(--ease-out); }
.ks-card::after, .ks-slot::after, .lp-card::after, .lp-tile::after, .ar-card::after, .if-card::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: 0; transition: opacity var(--dur-slow) var(--ease-out); z-index: 0; background: radial-gradient(240px 240px at var(--mx, 50%) var(--my, 0%), rgba(10,132,255,.12), transparent 70%); }
.ks-card:hover::after, .ks-slot:hover::after, .lp-card:hover::after, .lp-tile:hover::after, .ar-card:hover::after, .if-card:hover::after { opacity: 1; }
.ks-card:hover, .ks-slot:hover, .lp-card:hover, .lp-tile:hover, .ar-card:hover, .if-card:hover { border-color: var(--ks-blue-200) !important; transform: translateY(-3px); box-shadow: var(--sh-md) !important; }
.ks-card > *, .if-card > * { position: relative; z-index: 1; }
.ks-card--faceted, .ks-card--pad-lg { clip-path: none !important; }
.ks-icon-tile { background: var(--ks-blue-50) !important; color: var(--ks-blue) !important; border: 1px solid var(--ks-blue-100) !important; border-radius: var(--r-md) !important; box-shadow: none !important; clip-path: none !important; }
.ks-icon-tile--gold { color: var(--gold-deep) !important; border-color: var(--gold-300) !important; }
.ks-stat-num { font-family: var(--font-display) !important; font-weight: 600 !important; letter-spacing: -.03em; color: var(--ink) !important; } .ks-stat-num--gold { color: var(--gold-deep) !important; }
.ks-list li::before { background: var(--ks-blue) !important; background-image: none !important; width: 14px !important; height: 2px !important; border-radius: 0 !important; clip-path: none !important; margin-top: .72em; } .ks-list--gold li::before { background: var(--gold) !important; }
.ks-media, .ks-media--tall, .ks-media-frame, .ks-media-frame > figure, .lp-media, .ar-media, .if-photo, .if-window { clip-path: none !important; border-radius: var(--r-xl) !important; overflow: hidden; border: 1px solid var(--border) !important; box-shadow: none !important; filter: none !important; position: relative; background: var(--slate-100); }
.ks-media::before, .ks-media::after, .ks-media--tall::before, .ks-media--tall::after, .ks-media-frame::before, .ks-media-frame::after, .lp-media::before, .lp-media::after { content: none !important; display: none !important; }
.ks-media img, .lp-media img, .ar-media img, .if-photo img { filter: none !important; display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease-out); }
.ks-media:hover img, .lp-media:hover img, .if-photo:hover img { transform: scale(1.03); }
.if-photo > [data-depth], .if-window > .win-scene { position: absolute; inset: -14% 0; } .if-photo > [data-depth] img, .if-window > .win-scene img { position: absolute; inset: 0; height: 100%; }
.if-photo .cap, .if-window .cap { display: none !important; }
.ks-media-cap, .ks-media figcaption, figure figcaption.ks-media-cap { display: none !important; }
.ks-media::after, .ks-media-wrap::after { content: none !important; }
.if-photo .cap::before, .if-window .cap::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--gold); }
.ks-grad-text { background: linear-gradient(90deg, #0033EE 0%, #0A84FF 38%, #7C3AED 72%, #FF9A76 100%) !important; background-size: 200% 100% !important; -webkit-background-clip: text !important; background-clip: text !important; -webkit-text-fill-color: transparent; color: transparent; animation: rsLight 7s linear infinite; }
.ks-bg-subtle { background: var(--bg-subtle) !important; } .ks-divider, .ks-rule { background: var(--rule) !important; height: 1px !important; border: 0 !important; }
.ks-chip, .sol-spine a, .lp-chip { border-radius: var(--r-sm) !important; background: #fff !important; border: 1px solid var(--border) !important; color: var(--slate-700) !important; font-family: var(--font-sans) !important; font-size: 12px !important; letter-spacing: 0; transition: all var(--dur) var(--ease-out); }
.ks-chip:hover, .sol-spine a:hover, .lp-chip:hover { border-color: var(--ink) !important; color: var(--ink) !important; }
.viz, .lp-stage, .ew-client, .browser { background: #fff !important; border: 1px solid var(--border) !important; border-radius: var(--r-xl) !important; box-shadow: var(--sh-md) !important; clip-path: none !important; }
.ks-section, .ks-section-sm { position: relative; }
.ks-foot { position: relative; z-index: 0; background: #071033 !important; color: rgba(236,241,255,.72) !important; border-top: 0 !important; overflow: hidden; margin: 0 10px 10px; border-radius: 10px; }
.ks-foot.is-pinned { margin-bottom: 0; }
.ks-foot::before { content: none !important; display: none !important; }
.ks-foot::after { content: none !important; display: none !important; }
.ks-foot-inner { position: relative; z-index: 1; }
.ks-foot > .ks-glow, .ks-foot .ks-foot-cube, .ks-foot .kc-art { display: none !important; }
body > *:not(.ks-foot):not(.ks-nav):not(.ksa):not(.ksa-scrim):not(.ksa-launcher):not(script):not(style):not(.ks-mobile):not(.ew-sticky):not(.ew-sticky-m) { position: relative; z-index: 1; }
.ks-foot.is-pinned { position: sticky; bottom: 0; }
.ks-foot-lift { position: relative; z-index: 1; background: #fff; box-shadow: 0 30px 60px -20px rgba(7,16,51,.35); }
.ks-foot-lift::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; background: var(--rule); }
.ks-foot-cta { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; padding: clamp(40px, 5vw, 60px) 0 clamp(28px, 3.5vw, 40px); border-bottom: 1px solid rgba(255,255,255,.1); }
.ks-foot-eyebrow { display: inline-flex; align-items: center; font-family: var(--font-sans); font-weight: 600; font-size: 13px; letter-spacing: .02em; color: var(--ks-blue-300); }
.ks-foot-eyebrow::before { content: none; }
.ks-foot-title { margin: 12px 0 0; max-width: 16ch; font-family: var(--font-display); font-weight: 600; font-size: clamp(1.8rem, 1.2rem + 2vw, 2.9rem); line-height: 1.02; letter-spacing: -.034em; color: #fff !important; text-wrap: balance; }
.ks-foot-cta-actions { display: flex; flex-wrap: wrap; gap: 10px; flex: none; }
.ks-foot .ks-btn--primary { background: #fff !important; border-color: #fff !important; color: var(--ink) !important; box-shadow: none !important; } .ks-foot .ks-btn--primary:hover { background: var(--ks-blue-50) !important; }
.ks-foot .ks-btn--secondary { background: rgba(255,255,255,.06) !important; border-color: rgba(255,255,255,.22) !important; color: #fff !important; } .ks-foot .ks-btn--secondary:hover { background: rgba(255,255,255,.12) !important; border-color: rgba(255,255,255,.5) !important; }
.ks-foot-grid { display: grid; grid-template-columns: 1.6fr repeat(3, minmax(0, 1fr)); gap: clamp(24px, 3.5vw, 56px); padding: clamp(28px, 3.5vw, 44px) 0; }
.ks-foot-brand p { margin: 14px 0 18px; max-width: 34ch; font-size: 14px; line-height: 1.55; color: rgba(236,241,255,.68) !important; }
.ks-foot-logo img, .ks-foot img[src*="keystone-logo"] { display: block; height: 34px !important; width: auto !important; filter: none !important; }
.ks-foot-social { display: flex; gap: 8px; }
.ks-foot-social a { width: 38px; height: 38px; display: grid; place-items: center; border-radius: var(--r-md); border: 1px solid rgba(255,255,255,.14); color: rgba(236,241,255,.8) !important; background: rgba(255,255,255,.04); transition: background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out); }
.ks-foot-social a:hover { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.35); color: #fff !important; } .ks-foot-social svg { width: 17px; height: 17px; }
.ks-foot h5 { margin: 0 0 12px !important; font-family: var(--font-sans) !important; font-size: 13px !important; letter-spacing: 0; !important; text-transform: none; color: rgba(236,241,255,.55) !important; } .ks-foot h5::before { content: none !important; }
.ks-foot-links { display: grid; gap: 8px; }
.ks-foot-links a { position: relative; width: fit-content; font-size: 14px; line-height: 1.3; color: rgba(236,241,255,.82) !important; transition: color var(--dur-fast) var(--ease-out); }
.ks-foot-links a::after { content: ""; position: absolute; left: 0; right: 0; bottom: -2px; height: 1px; background: var(--flow-grad); transform: scaleX(0); transform-origin: left; transition: transform var(--dur) var(--ease-out); }
.ks-foot-links a:hover { color: #fff !important; } .ks-foot-links a:hover::after { transform: scaleX(1); }
.ks-foot-offices { display: block !important; grid-template-columns: none !important; gap: 0 !important; padding: 0 !important; border-top: 1px solid rgba(255,255,255,.1) !important; border-bottom: 1px solid rgba(255,255,255,.1); }
.ks-foot-office { display: grid; grid-template-columns: 220px minmax(0, 1fr) auto; gap: 24px; align-items: baseline; padding: 14px 0; }
.ks-foot-office + .ks-foot-office { border-top: 1px solid rgba(255,255,255,.08); }
.ks-foot-office-k { font-family: var(--font-sans); font-size: 13px; letter-spacing: 0; text-transform: none; color: var(--ks-blue-300); }
.ks-foot-office-v b { display: block; font-weight: 600; font-size: 15px; color: #fff; letter-spacing: -.01em; }
.ks-foot-office-v span { display: block; margin-top: 3px; font-size: 14px; color: rgba(236,241,255,.62); }
.ks-foot-office-a { font-family: var(--font-sans); font-size: 12.5px; color: rgba(236,241,255,.78) !important; white-space: nowrap; } .ks-foot-office-a:hover { color: #fff !important; }
.ks-foot-res { border-bottom: 1px solid rgba(255,255,255,.1); }
.ks-foot-res summary { list-style: none; display: flex; align-items: center; gap: 12px; padding: 14px 0; cursor: pointer; font-family: var(--font-sans); font-size: 13px; letter-spacing: 0; text-transform: none; color: rgba(236,241,255,.7); }
.ks-foot-res summary::-webkit-details-marker { display: none; } .ks-foot-res summary small { font: inherit; color: rgba(236,241,255,.4); letter-spacing: 0; } .ks-foot-res summary svg { width: 16px; height: 16px; margin-left: auto; transition: transform var(--dur) var(--ease-out); } .ks-foot-res[open] summary svg { transform: rotate(180deg); }
.ks-foot-res summary:hover { color: #fff; }
.ks-foot-res-links { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 28px; padding: 6px 0 30px; }
.ks-foot-res-links a { font-size: 13.5px; color: rgba(236,241,255,.62) !important; } .ks-foot-res-links a:hover { color: #fff !important; }
.ks-foot-bottom { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 16px 0 20px; border-top: 0 !important; font-size: 13px; color: rgba(236,241,255,.5) !important; }
.ks-foot-legal { display: flex; gap: 18px; } .ks-foot-legal a { color: rgba(236,241,255,.62) !important; font-size: 13px; } .ks-foot-legal a:hover { color: #fff !important; } .ks-foot-legal-sep { display: none; }
.ks-foot-tag { font-family: var(--font-sans); font-size: 13px; letter-spacing: 0; text-transform: none; color: rgba(236,241,255,.4); }
@media (max-width: 991px){ .ks-foot-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .ks-foot-brand { grid-column: 1 / -1; } .ks-foot-res-links { grid-template-columns: 1fr 1fr; } .ks-foot-office { grid-template-columns: 1fr; gap: 8px; } }
@media (max-width: 720px){ .ks-foot { position: relative; } .ks-foot-cta { flex-direction: column; align-items: flex-start; } .ks-foot-title { max-width: none; } .ks-foot-grid { grid-template-columns: 1fr; gap: 28px; } .ks-foot-res-links { grid-template-columns: 1fr; } .ks-foot-bottom { flex-direction: column; align-items: flex-start; gap: 10px; } }
@media (prefers-reduced-motion: reduce){ .ks-foot { position: relative; } }
.ksa-launcher, .ksa-launcher:hover { left: auto !important; right: 22px !important; transform: none !important; background: #fff !important; background-image: none !important; color: var(--ink) !important; border: 1px solid var(--border) !important; border-radius: var(--r-pill) !important; box-shadow: var(--sh-lg) !important; }
.ksa-launcher:hover { transform: translateY(-2px) !important; } .ksa-launcher::before, .ksa-launcher::after { content: none !important; display: none !important; }
.ksa-launcher-hint { color: var(--fg3) !important; border-left-color: var(--border) !important; }
.ksa-tile { background: var(--ks-grad) !important; background-size: 100% 100% !important; border-radius: var(--r-sm) !important; } .ksa-tile::after { display: none !important; } .ksa-tile .ksa-glyph svg { color: #fff !important; stroke: #fff !important; }
[data-depth] { will-change: transform; }
[data-tilt] { transform: perspective(1200px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)); transition: transform .5s var(--ease-out); transform-style: preserve-3d; } [data-tilt].is-tilt { transition: transform .12s linear; }
.ks-section > .ks-container-wide, .ks-section > .ks-container, .ks-section-sm > .ks-container-wide { transform: translate3d(0, calc((.5 - var(--vp, .5)) * -30px), 0); will-change: transform; }
.if-scene { position: relative; } .if-stage { position: sticky; top: 0; height: 100vh; height: 100svh; overflow: hidden; }
.if-r { opacity: 0; transform: translateY(18px); transition: opacity .6s var(--ease-out), transform .6s var(--ease-out); } .if-r.is-in { opacity: 1; transform: none; } .ks-reveal { transition-duration: .6s !important; } 
.if-veil { position: fixed; inset: 0; z-index: 4000; background: #fff; pointer-events: none; opacity: 0; transition: opacity .32s var(--ease-out); }
.if-veil .if-veil-line { position: absolute; left: 50%; top: 50%; width: 120px; height: 2px; border-radius: 2px; transform: translate(-50%, -50%); background: linear-gradient(90deg, transparent, #0A5BF0 30%, #7C3AED 55%, #FF9A76 80%, transparent); background-size: 200% 100%; opacity: 0; }
.if-veil.is-on { opacity: 1; pointer-events: auto; }
.if-veil.is-on .if-veil-line { opacity: 1; animation: ifVeilLine 1.1s var(--ease-in-out) infinite; }
.if-veil.is-out { opacity: 0; transition: opacity .42s var(--ease-out); }
@keyframes ifVeilLine { 0% { background-position: 100% 0; transform: translate(-50%, -50%) scaleX(.6); } 50% { transform: translate(-50%, -50%) scaleX(1); } 100% { background-position: -100% 0; transform: translate(-50%, -50%) scaleX(.6); } }
@media (prefers-reduced-motion: reduce) { .if-veil { display: none !important; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } .if-r, .ks-reveal { opacity: 1 !important; transform: none !important; } }
.ks-mono, .ks-eyebrow, .stage-n, .viz-tt, .ks-logo-sub, .ks-mobile-group > span, .ks-mobile-label, .ks-mega-label, .ks-office-label, .ks-office-flag, .ks-foot h5, .ks-foot-seo h4, .ks-foot-seo-col h5, .kn-marquee-label, .method b, .pillar-n, .pillar-go, .ledger-n, .ledger-row .sol a, .quote small, .prow-copy dt, .hero-hint, .ks-foot-eyebrow, .ks-foot-office-k, .ks-foot-office-a, .ks-foot-res summary, .ks-foot-tag, .lp-eyebrow, .lp-label, .ar-label, .ar-meta, .ar-kicker, .lp-kicker, .sol-n, .sol-k, .ks-card b:first-child, [class*="-eyebrow"], [class*="-kicker"], [class*="-label"], [class*="-meta"], [data-chapter]::before, .ew-wiz-kicker, .ew-wiz-count, .ew-rv span, .ew-issue, .ew-sec-l, .ew-card-meta, .ew-mail-meta, .ew-list-h span, .ew-read-top .t, .ew-done-next small, .ct-how small, .ksa-row span {
  font-family: var(--font-sans) !important; letter-spacing: 0 !important; text-transform: none !important; }
.ks-card b:first-child, .method b, .stage-n, .pillar-n, .ledger-n { font-weight: 600 !important; font-size: 13px !important; }
.quote small, .prow-copy dt, .ks-foot-office-k, .ks-foot-res summary, .ks-foot-tag, .ks-foot h5, .ks-mega-label, .ks-mobile-group > span, .ks-mobile-label { font-weight: 600 !important; font-size: 13px !important; }
.ks-nav { background: rgba(255,255,255,.7) !important; border-bottom: 1px solid transparent !important; backdrop-filter: blur(16px) saturate(140%); -webkit-backdrop-filter: blur(16px) saturate(140%); transition: background .35s var(--ease-out), border-color .35s var(--ease-out), padding .35s var(--ease-out) !important; }
.ks-nav > .ks-container-wide { transition: max-width .45s var(--ease-out), padding .45s var(--ease-out), margin .45s var(--ease-out), border-radius .45s var(--ease-out), box-shadow .45s var(--ease-out), background .45s var(--ease-out); }
.ks-nav.is-scrolled { background: transparent !important; backdrop-filter: none; -webkit-backdrop-filter: none; padding: 10px 0; }
.ks-nav.is-scrolled > .ks-container-wide { max-width: 1240px; padding-inline: 14px 12px; border-radius: 999px; background: rgba(255,255,255,.86); backdrop-filter: blur(18px) saturate(150%); -webkit-backdrop-filter: blur(18px) saturate(150%); box-shadow: 0 18px 50px -24px rgba(7,16,51,.35), 0 1px 0 rgba(7,16,51,.06) inset; border: 1px solid rgba(7,16,51,.06); }
.ks-nav.is-scrolled .ks-nav-inner { min-height: 60px; }
.ks-nav-link { position: relative; transition: color .3s var(--ease-out); }
.ks-nav-link::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 6px; height: 2px; border-radius: 2px; background: linear-gradient(90deg, #0A84FF, #7C3AED); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ease-out); }
.ks-nav-link:hover::after, .ks-nav-link.is-active::after { transform: scaleX(1); }
@media (max-width: 991px){ .ks-nav.is-scrolled { padding: 0; } .ks-nav.is-scrolled > .ks-container-wide { max-width: none; border-radius: 0; box-shadow: none; border: 0; padding-inline: var(--gutter); } }
.kn-hero--as { position: relative; overflow: hidden; }
.kn-hero--as > .ks-container-wide, .kn-hero--as > .ks-container { position: relative; z-index: 2; }
.kn-hero--as .row > [class*="col-"]:first-child { max-width: 58%; flex: 0 0 58%; }
.as { position: absolute; z-index: 1; right: var(--gutter); top: 50%; transform: translateY(-50%); width: min(38vw, 560px); height: min(66%, 520px); pointer-events: none; }
.as-p { position: absolute; border-radius: 10px; overflow: hidden; background: var(--slate-100); box-shadow: 0 34px 70px -30px rgba(7,16,51,.4); animation: asIn 1.1s var(--ease-out) both; }
.as-p img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.as-p1 { left: 0; top: 10%; width: 60%; height: 64%; } .as-p2 { right: 0; top: 0; width: 44%; height: 42%; animation-delay: .12s; } .as-p3 { right: 8%; bottom: 0; width: 50%; height: 40%; animation-delay: .24s; }
@keyframes asIn { from { opacity: 0; transform: translateY(28px) scale(.97); } to { opacity: 1; transform: none; } }
@media (max-width: 991px){ .as { display: none; } .kn-hero--as .row > [class*="col-"]:first-child { max-width: none; flex: 0 0 100%; } }
.kn-field, .kn-veil, .kn-current, .kn-beam, .kn-band, .ks-glow { display: none !important; }
.kn-hero:not(.dark) { background: #fff !important; }
.ks-nav, .ks-nav.is-scrolled { background: transparent !important; backdrop-filter: none; -webkit-backdrop-filter: none; padding: 12px 0 !important; border-bottom: 0 !important; }
.ks-nav > .ks-container-wide, .ks-nav.is-scrolled > .ks-container-wide { max-width: 1240px; padding-inline: 14px 12px; border-radius: 999px; background: rgba(255,255,255,.84); backdrop-filter: blur(18px) saturate(150%); -webkit-backdrop-filter: blur(18px) saturate(150%); box-shadow: 0 18px 50px -28px rgba(7,16,51,.35); border: 1px solid rgba(7,16,51,.06); transition: background .4s var(--ease-out), border-color .4s var(--ease-out), box-shadow .4s var(--ease-out); }
.ks-nav .ks-nav-inner { min-height: 60px; }
.ks-nav.nav-dark > .ks-container-wide { background: rgba(10,16,40,.55); border-color: rgba(255,255,255,.08); box-shadow: 0 18px 50px -28px rgba(0,0,0,.6); }
.ks-nav.nav-dark .ks-nav-link { color: rgba(230,238,255,.82) !important; } .ks-nav.nav-dark .ks-nav-link:hover, .ks-nav.nav-dark .ks-nav-link.is-active { color: #fff !important; }
.ks-nav.nav-dark .ks-nav-link::after { background: linear-gradient(90deg, #8DB8FF, #A78BFA); }
.ks-nav.nav-dark .ks-btn--secondary { background: transparent !important; border-color: rgba(255,255,255,.22) !important; color: #E6EEFF !important; } .ks-nav.nav-dark .ks-btn--secondary:hover { border-color: #fff !important; color: #fff !important; }
.ks-nav.nav-dark .ks-btn--primary { background: #DCEBFF !important; border-color: #DCEBFF !important; color: #071033 !important; box-shadow: none !important; } .ks-nav.nav-dark .ks-btn--primary:hover { background: #fff !important; }
.ks-nav.nav-dark .ks-burger { color: #fff !important; border-color: rgba(255,255,255,.25) !important; }
@media (max-width: 991px){ .ks-nav, .ks-nav.is-scrolled { padding: 8px 0 !important; } .ks-nav > .ks-container-wide, .ks-nav.is-scrolled > .ks-container-wide { max-width: none; width: auto; margin-inline: 10px; padding-inline: 12px; } } 
body { padding-top: 0; }
.dark.hero, .dark.hero * { --kn-guard: 1; }
.hero.dark h1, .hero.dark .ks-display { color: #E6EEFF !important; }
@media (max-height: 600px){ .mosaic { min-height: clamp(200px, 36vh, 520px) !important; } }
.ks-nav { position: fixed !important; left: 0; right: 0; top: 0; }
body { padding-top: 0 !important; }
.kn-hero { padding-top: clamp(132px, 14vw, 172px) !important; }
.ks-foot-lift > *:first-child:not(.hero):not(.kn-hero):not(section) { padding-top: 96px; }
.ks-foot-lift > main#main:first-child { padding-top: 0; }
main > section:first-child:not(.kn-hero):not(.hero), body > .ks-foot-lift > section:first-child:not(.kn-hero):not(.hero) { padding-top: 120px; }
.ks-card, .viz, .lp-stage, .ew-client, .browser, .ks-media, .if-photo, .if-window, .ks-icon-tile, .ks-mega, .lp-card, .lp-tile, .ar-card { border-radius: 10px !important; }
@media (max-width: 720px){ .ks-foot { margin: 0 6px 6px; } }
.amb, .stage-dark > .amb, .dark > .amb, .ks-foot > .amb, .hero-stage > .amb { position: absolute !important; inset: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; overflow: hidden; }
.amb path { fill: none; stroke-width: 1.4; stroke-linejoin: round; stroke-linecap: round; opacity: 0; stroke-dasharray: 0 calc(var(--L) * 1px); }
.amb path.is-hot { animation: ambForm 2.2s linear 1 forwards; }
@keyframes ambForm {
  0%   { opacity: .34; stroke-dasharray: calc(var(--L) * .06px) calc(var(--L) * 1px); stroke-dashoffset: 0; }
  55%  { opacity: .36; stroke-dasharray: calc(var(--L) * .5px) calc(var(--L) * 1px);  stroke-dashoffset: calc(var(--L) * -.55px); }
  80%  { opacity: .26; stroke-dasharray: calc(var(--L) * .5px) calc(var(--L) * 1px);  stroke-dashoffset: calc(var(--L) * -.8px); }
  100% { opacity: 0;   stroke-dasharray: calc(var(--L) * .5px) calc(var(--L) * 1px);  stroke-dashoffset: calc(var(--L) * -1.05px); }
}
}
.stage-dark > .amb + *, .ks-foot > .amb ~ * { position: relative; }
@media (prefers-reduced-motion: reduce){ .amb { display: none; } }
.ks-nav, .ks-nav.is-scrolled { padding: 14px 0 !important; }
.ks-nav > .ks-container-wide, .ks-nav.is-scrolled > .ks-container-wide { max-width: var(--container-wide, 1320px); padding-inline: var(--gutter); background: transparent !important; border: 0 !important; box-shadow: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border-radius: 0; }
.ks-nav .ks-nav-inner { display: flex; align-items: center; gap: 22px; height: auto; min-height: 0; }
.ks-nav-logo { flex: none; } .ks-nav-logo-img { height: 28px !important; }
.ks-nav-pill { flex: 1; min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 58px; padding: 0 10px 0 22px; border-radius: 999px; background: rgba(255,255,255,.66); backdrop-filter: blur(18px) saturate(160%); -webkit-backdrop-filter: blur(18px) saturate(160%); border: 1px solid rgba(7,16,51,.06); box-shadow: 0 10px 30px -22px rgba(7,16,51,.25); transition: background .18s linear, border-color .18s linear; }
.ks-nav .ks-nav-links { display: flex; align-items: center; gap: 4px; }
.ks-nav .ks-nav-link { font-weight: 400 !important; font-size: 15.5px !important; letter-spacing: -.005em; padding: 8px 12px !important; border-radius: 999px; color: var(--ink) !important; background: transparent !important; transition: color .18s linear, background .18s linear; }
.ks-nav .ks-nav-link:hover { background: rgba(7,16,51,.05) !important; }
.ks-nav .ks-nav-link::after { content: none !important; }
.ks-nav .ks-nav-link.is-active { padding-left: 24px !important; position: relative; }
.ks-nav .ks-nav-link.is-active::before { content: ""; position: absolute; left: 12px; top: 50%; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%; background: currentColor; }
.ks-nav .ks-nav-cta { display: flex; align-items: center; gap: 6px; }
.ks-nav .ks-nav-cta .ks-btn--secondary { background: transparent !important; border-color: transparent !important; color: var(--ink) !important; font-weight: 400 !important; font-size: 15.5px !important; box-shadow: none !important; }
.ks-nav .ks-nav-cta .ks-btn--secondary:hover { background: rgba(7,16,51,.05) !important; }
.ks-nav .ks-nav-cta .ks-btn--primary { background: #0B1220 !important; border-color: #0B1220 !important; color: #fff !important; font-weight: 500 !important; font-size: 15px !important; padding: 10px 20px !important; border-radius: 999px !important; box-shadow: none !important; transition: background .18s linear, color .18s linear; }
.ks-nav .ks-nav-cta .ks-btn--primary:hover { background: var(--ks-blue) !important; border-color: var(--ks-blue) !important; }
.ks-nav.nav-dark .ks-nav-pill { background: rgba(10,16,40,.5); border-color: rgba(255,255,255,.08); box-shadow: 0 10px 30px -22px rgba(0,0,0,.6); }
.ks-nav.nav-dark .ks-nav-link, .ks-nav.nav-dark .ks-nav-cta .ks-btn--secondary { color: #E6EEFF !important; }
.ks-nav.nav-dark .ks-nav-link:hover, .ks-nav.nav-dark .ks-nav-cta .ks-btn--secondary:hover { background: rgba(255,255,255,.08) !important; }
.ks-nav.nav-dark .ks-nav-cta .ks-btn--primary { background: #DCEBFF !important; border-color: #DCEBFF !important; color: #071033 !important; }
.ks-nav.nav-dark .ks-nav-cta .ks-btn--primary:hover { background: #fff !important; border-color: #fff !important; }
.ks-nav.nav-dark .ks-burger { color: #fff !important; }
@media (max-width: 991px){ .ks-nav, .ks-nav.is-scrolled { padding: 10px 0 !important; } .ks-nav-pill { height: 52px; padding: 0 6px 0 12px; } }
.ks-nav, .ks-nav.is-scrolled, .ks-nav.nav-dark, .ks-nav--light, .ks-nav--ink { background: transparent !important; border: 0 !important; box-shadow: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; pointer-events: none; }
.ks-nav .ks-nav-pill, .ks-nav .ks-mobile-toggle, .ks-nav .ks-burger, .ks-nav .ks-mega { pointer-events: auto; }
.ks-nav .ks-nav-inner { gap: 0; }
.ks-nav-pill { padding: 0 8px 0 20px; gap: 18px; }
.ks-nav-pill .ks-nav-logo { display: flex; align-items: center; margin-right: 6px; } .ks-nav-pill .ks-nav-logo-img { height: 24px !important; width: auto !important; }
.ks-nav .ks-nav-links { margin-inline: auto; }
@media (max-width: 991px){ .ks-nav-pill { padding: 0 6px 0 16px; } .ks-nav-pill .ks-nav-logo-img { height: 22px !important; } }
.ks-nav-pill .ks-burger { flex: none; margin-left: auto; border: 0 !important; background: transparent !important; color: var(--ink) !important; width: 40px; height: 40px; border-radius: 999px; }
@media (min-width: 992px){ .ks-nav-pill .ks-burger { display: none !important; } }
.ks-nav-pill { min-width: 0; overflow: hidden; }
.ks-nav .cta-s { display: none; }
@media (max-width: 1240px){ .ks-nav .cta-l { display: none; } .ks-nav .cta-s { display: inline; } .ks-nav .ks-nav-link { padding: 8px 10px !important; font-size: 15px !important; } .ks-nav .ks-nav-cta .ks-btn--secondary { display: none !important; } }
@media (max-width: 991px){ .ks-nav .ks-nav-links, .ks-nav .ks-nav-cta { display: none !important; } .ks-nav-pill .ks-burger { display: grid !important; place-items: center; } }
body section.hero.dark, body .ks-foot-lift > section.hero.dark { background: #060B1F !important; }
body section.hero.dark > .hero-stage { background: radial-gradient(90% 70% at 20% 100%, rgba(10,91,240,.28), transparent 60%), radial-gradient(60% 50% at 95% 0%, rgba(124,58,237,.16), transparent 60%), #060B1F !important; }
html body .ks-nav, html body .ks-nav.ks-nav--ink, html body .ks-nav.ks-nav--light, html body .ks-nav.is-scrolled, html body .ks-nav.nav-dark, html body .ks-nav.is-scrolled.ks-nav--ink, html body .ks-nav.is-scrolled.ks-nav--light, html body .ks-nav.ks-nav--ink.nav-dark.is-scrolled, html body .ks-nav.if-over-dark {
  background: transparent !important; background-image: none !important; border: 0 !important; box-shadow: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
html body .ks-nav-pill { position: relative; overflow: visible !important; }
html body .ks-nav .ks-nav-item { position: static !important; }
html body .ks-nav .ks-mega, html body .ks-nav .ks-mega--1, html body .ks-nav .ks-mega--2 {
  position: absolute !important; left: 0 !important; right: 0 !important; top: calc(100% + 10px) !important; width: auto !important; max-width: none !important;
  transform: translateY(-8px) !important; opacity: 0; visibility: hidden; pointer-events: none;
  padding: 18px !important; border-radius: 22px !important; background: rgba(255,255,255,.97) !important; border: 1px solid rgba(7,16,51,.07) !important;
  box-shadow: 0 30px 70px -30px rgba(7,16,51,.35), 0 2px 8px rgba(7,16,51,.04) !important; backdrop-filter: blur(18px) saturate(150%); -webkit-backdrop-filter: blur(18px) saturate(150%);
  transition: opacity .28s cubic-bezier(.2, .7, .2, 1) .12s, transform .34s cubic-bezier(.2, .7, .2, 1) .12s, visibility 0s linear .46s !important; z-index: 1200; }
html body .ks-nav .ks-mega::before { content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px; }
html body .ks-nav .ks-nav-item:hover > .ks-mega, html body .ks-nav .ks-nav-item:focus-within > .ks-mega {
  opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0) !important; transition: opacity .3s cubic-bezier(.2, .7, .2, 1), transform .4s cubic-bezier(.2, .7, .2, 1), visibility 0s !important; }
html body .ks-nav .ks-nav-item:hover > .ks-nav-link { background: rgba(7,16,51,.05) !important; }
html body .ks-nav.nav-dark .ks-nav-item:hover > .ks-nav-link { background: rgba(255,255,255,.08) !important; }
html body .ks-nav .ks-nav-link svg { transition: transform .3s cubic-bezier(.2, .7, .2, 1); }
html body .ks-nav .ks-mega-grid { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important; gap: 4px 8px !important; }
html body .ks-nav .ks-mega-link { padding: 14px 16px !important; border-radius: 14px !important; gap: 14px !important; align-items: flex-start; transition: background .22s ease, transform .22s ease !important; }
html body .ks-nav .ks-mega-link:hover { background: #F3F6FF !important; transform: none !important; }
html body .ks-nav .ks-mega-link .ks-icon-tile { width: 40px !important; height: 40px !important; border-radius: 12px !important; background: transparent !important; color: var(--ks-blue) !important; border: 0 !important; transition: background .22s ease, color .22s ease; }
html body .ks-nav .ks-mega-title { font-size: 15px !important; font-weight: 600 !important; color: var(--ink) !important; margin-bottom: 3px !important; }
html body .ks-nav .ks-mega-desc { font-size: 13.5px !important; color: var(--fg2) !important; }
html body .ks-nav .ks-mega-foot { margin-top: 10px !important; border-radius: 14px !important; background: linear-gradient(90deg, #F3F6FF, #F6F2FF) !important; }
html body .ks-nav .ks-mega-link { opacity: 0; transform: translateY(6px); }
html body .ks-nav .ks-nav-item:hover > .ks-mega .ks-mega-link, html body .ks-nav .ks-nav-item:focus-within > .ks-mega .ks-mega-link { opacity: 1; transform: none; transition: opacity .35s ease calc(var(--i, 0) * 30ms + 60ms), transform .4s cubic-bezier(.2, .7, .2, 1) calc(var(--i, 0) * 30ms + 60ms), background .22s ease !important; }
@media (prefers-reduced-motion: reduce){ html body .ks-nav .ks-mega, html body .ks-nav .ks-mega-link { transition: none !important; transform: none !important; } }
@keyframes icNudge { 0% { transform: translate(0,0); } 40% { transform: translate(0,-2px); } 70% { transform: translate(0,.5px); } 100% { transform: translate(0,0); } }
@keyframes icTilt { 0% { transform: rotate(0); } 35% { transform: rotate(-9deg); } 70% { transform: rotate(4deg); } 100% { transform: rotate(0); } }
@keyframes icDraw { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes icArrow { 0% { transform: translateX(0); } 45% { transform: translateX(4px); } 55% { transform: translateX(4px); opacity: 1; } 56% { transform: translateX(-6px); opacity: 0; } 100% { transform: translateX(0); opacity: 1; } }
html body .ks-icon-tile, html body .ks-mega-link .ks-icon-tile { transition: background .25s ease, border-color .25s ease, color .25s ease !important; }
html body a:hover .ks-icon-tile, html body button:hover .ks-icon-tile, html body .ks-card:hover .ks-icon-tile, html body .ks-mega-link:hover .ks-icon-tile, html body [class*="card"]:hover .ks-icon-tile { background: transparent !important; color: var(--ks-blue) !important; border-color: rgba(10,91,240,.18) !important; }
html body .ks-icon-tile svg, html body .ks-mega-link .ks-icon-tile svg { fill: none !important; stroke: currentColor; stroke-width: 1.75; overflow: visible; transform-origin: 50% 60%; }
html body a:hover .ks-icon-tile svg, html body button:hover .ks-icon-tile svg, html body .ks-card:hover .ks-icon-tile svg, html body .ks-mega-link:hover .ks-icon-tile svg, html body [class*="card"]:hover .ks-icon-tile svg, html body .ks-icon-tile:hover svg { animation: icNudge .55s cubic-bezier(.3,.7,.3,1) 1; }
html body a:hover .ks-icon-tile svg *, html body button:hover .ks-icon-tile svg *, html body .ks-card:hover .ks-icon-tile svg *, html body .ks-mega-link:hover .ks-icon-tile svg *, html body [class*="card"]:hover .ks-icon-tile svg *, html body .ks-icon-tile:hover svg * { stroke-dasharray: 1; stroke-dashoffset: 0; animation: icDraw .7s cubic-bezier(.4,0,.2,1) 1; }
html body .ks-mega-link:nth-child(even):hover .ks-icon-tile svg, html body [class*="card"]:nth-child(even):hover .ks-icon-tile svg { animation-name: icTilt; }
html body a:hover svg.i-arrow-right, html body button:hover svg.i-arrow-right, html body a:hover svg.i-arrow-up-right, html body .go:hover svg.i-arrow-right { animation: icArrow .6s cubic-bezier(.4,0,.2,1) 1; }
html body .ks-foot-social a:hover svg { animation: icNudge .5s cubic-bezier(.3,.7,.3,1) 1; }
@media (prefers-reduced-motion: reduce){ html body .ks-icon-tile svg, html body .ks-icon-tile svg *, html body a svg, html body button svg { animation: none !important; } }
html body .ks-nav .ks-mega, html body .ks-nav.nav-dark .ks-mega, html body .ks-nav.if-over-dark .ks-mega, html body .ks-nav.ks-nav--ink .ks-mega {
  background: #FFFFFF !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; isolation: isolate; color: var(--ink) !important; }
html body .ks-nav .ks-mega-foot, html body .ks-nav.nav-dark .ks-mega-foot { position: relative; z-index: 1; opacity: 1 !important; background: linear-gradient(90deg, #F2F5FF, #F5F1FF) !important; }
html body .ks-nav .ks-mega-foot b, html body .ks-nav .ks-mega-foot strong, html body .ks-nav .ks-mega-foot h5, html body .ks-nav .ks-mega-foot .ks-mega-title { color: var(--ink) !important; }
html body .ks-nav .ks-mega-foot p, html body .ks-nav .ks-mega-foot span:not(.ks-btn *), html body .ks-nav .ks-mega-foot small { color: var(--fg2) !important; }
html body .ks-nav .ks-mega .ks-btn, html body .ks-nav.nav-dark .ks-mega .ks-btn, html body .ks-nav.if-over-dark .ks-mega .ks-btn, html body .ks-nav .ks-mega .ks-btn--secondary, html body .ks-nav.nav-dark .ks-mega .ks-btn--secondary, html body .ks-nav.if-over-dark .ks-mega .ks-btn--secondary {
  opacity: 1 !important; background: #FFFFFF !important; border: 1px solid rgba(7,16,51,.14) !important; color: var(--ink) !important; box-shadow: 0 1px 2px rgba(7,16,51,.05) !important; font-weight: 500 !important; }
html body .ks-nav .ks-mega .ks-btn:hover, html body .ks-nav.nav-dark .ks-mega .ks-btn:hover { background: var(--ink) !important; border-color: var(--ink) !important; color: #fff !important; }
html body .ks-nav .ks-mega .ks-btn svg { opacity: 1 !important; color: currentColor !important; }
html body .ks-nav .ks-mega-title, html body .ks-nav.nav-dark .ks-mega-title { color: var(--ink) !important; } html body .ks-nav .ks-mega-desc, html body .ks-nav.nav-dark .ks-mega-desc { color: var(--fg2) !important; }
html body .ks-btn, html body .ks-nav .ks-nav-cta .ks-btn--primary, html body .ks-nav .ks-nav-cta .ks-btn--secondary, html body .ks-foot .ks-btn, html body .ks-mega .ks-btn, html body .ew-wiz .ks-btn, html body .ksa .ks-btn { border-radius: 10px !important; }
html body .ks-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; isolation: isolate; transition: color .3s ease, border-color .3s ease, background-color .3s ease, box-shadow .3s ease, transform .3s cubic-bezier(.2,.7,.2,1) !important; }
html body .ks-btn:hover { transform: translateY(-1px); }
html body .ks-btn:active { transform: translateY(0); transition-duration: .1s !important; }
html body .ks-btn::before { content: ""; position: absolute; inset: 0; z-index: -1; border-radius: inherit; background: linear-gradient(90deg, rgba(10,91,240,.08), rgba(124,58,237,.08)); transform: scaleX(0); transform-origin: left center; transition: transform .45s cubic-bezier(.65,0,.25,1); }
html body .ks-btn:hover::before { transform: scaleX(1); }
html body .ks-btn--primary::before { background: linear-gradient(90deg, rgba(255,255,255,.14), rgba(255,255,255,0)); }
html body .ks-btn .ks-btn-arrow { width: 16px; height: 16px; flex: none; margin-right: -2px; }
html body .ks-btn:hover svg.i-arrow-right, html body .ks-btn:focus-visible svg.i-arrow-right { animation: icArrow .6s cubic-bezier(.4,0,.2,1) 1; }
@media (prefers-reduced-motion: reduce){ html body .ks-btn, html body .ks-btn::before { transition: none !important; transform: none !important; } }
html body .ks-nav .ks-nav-item > .ks-mega, html body .ks-nav .ks-nav-item > .ks-mega * { pointer-events: none !important; }
html body .ks-nav .ks-nav-item:hover > .ks-mega, html body .ks-nav .ks-nav-item:hover > .ks-mega *, html body .ks-nav .ks-nav-item:focus-within > .ks-mega, html body .ks-nav .ks-nav-item:focus-within > .ks-mega *, html body .ks-nav .ks-nav-item.is-open > .ks-mega, html body .ks-nav .ks-nav-item.is-open > .ks-mega * { pointer-events: auto !important; }
html body .ks-nav .ks-nav-item:not(:hover):not(:focus-within):not(.is-open) > .ks-mega { visibility: hidden !important; }
html body .ks-nav .ks-mega::before { pointer-events: none !important; }
html body .ks-nav .ks-nav-item:hover > .ks-mega::before { pointer-events: auto !important; }
html body .ks-nav, html body .ks-nav > .ks-container-wide, html body .ks-nav .ks-nav-inner { pointer-events: none !important; }
html body .ks-nav .ks-nav-pill, html body .ks-nav .ks-nav-pill > *:not(.ks-nav-links), html body .ks-nav .ks-nav-links > *, html body .ks-nav .ks-nav-link { pointer-events: auto; }
@media (hover: hover) and (min-width: 992px){
  html body .ks-nav .ks-nav-item:hover:not(.is-open):not(:focus-within) > .ks-mega { opacity: 0 !important; visibility: hidden !important; transform: translateY(-8px) !important; pointer-events: none !important; }
  html body .ks-nav .ks-nav-item:hover:not(.is-open):not(:focus-within) > .ks-mega * { pointer-events: none !important; }
  html body .ks-nav .ks-nav-item.is-open > .ks-mega { opacity: 1 !important; visibility: visible !important; transform: translateY(0) !important; pointer-events: auto !important; transition: opacity .3s cubic-bezier(.2,.7,.2,1), transform .4s cubic-bezier(.2,.7,.2,1), visibility 0s !important; }
  html body .ks-nav .ks-nav-item.is-open > .ks-mega .ks-mega-link { opacity: 1; transform: none; transition: opacity .35s ease calc(var(--i, 0) * 30ms + 60ms), transform .4s cubic-bezier(.2,.7,.2,1) calc(var(--i, 0) * 30ms + 60ms), background .22s ease !important; }
  html body .ks-nav .ks-nav-item.is-open > .ks-nav-link { background: rgba(7,16,51,.05) !important; } html body .ks-nav.nav-dark .ks-nav-item.is-open > .ks-nav-link { background: rgba(255,255,255,.08) !important; }
  html body .ks-nav .ks-nav-item.is-open > .ks-nav-link svg { transform: rotate(180deg); }
  html body .ks-nav .ks-nav-item:hover:not(.is-open) > .ks-nav-link svg { transform: none; }
}
html body .ksa-launcher, html body .ksa-launcher:hover { position: fixed !important; left: 50% !important; right: auto !important; bottom: 20px !important; transform: translateX(-50%) !important;
  display: inline-flex !important; align-items: center; gap: 10px; height: 42px !important; padding: 0 6px 0 12px !important; border-radius: 10px !important;
  background: rgba(255,255,255,.72) !important; background-image: none !important; color: var(--ink) !important; border: 1px solid rgba(7,16,51,.1) !important;
  box-shadow: 0 10px 30px -18px rgba(7,16,51,.35) !important; backdrop-filter: blur(16px) saturate(160%); -webkit-backdrop-filter: blur(16px) saturate(160%);
  font: 500 14px/1 var(--font-sans) !important; letter-spacing: -.005em; overflow: visible !important; animation: none !important;
  transition: background .18s linear, color .18s linear, border-color .18s linear, box-shadow .25s ease, opacity .3s ease, visibility .3s !important; }
html body .ksa-launcher::before, html body .ksa-launcher::after { content: none !important; display: none !important; }
html body .ksa-launcher .ksa-tile, html body .ksa-launcher .ksa-launcher-hint, html body .ksa-launcher .ksa-launcher-badge { display: none !important; }
html body .ksa-launcher .ksa-lt { display: grid; place-items: center; width: 18px; height: 18px; color: var(--ks-blue); transition: color .18s linear; }
html body .ksa-launcher .ksa-lic { width: 16px; height: 16px; fill: none !important; overflow: visible; transform-origin: 50% 50%; }
html body .ksa-launcher .ksa-lic path { stroke-dasharray: 1; stroke-dashoffset: 0; }
html body .ksa-launcher .ksa-ll { white-space: nowrap; }
html body .ksa-launcher .ksa-lk { display: inline-grid; place-items: center; height: 30px; padding: 0 12px; border-radius: 7px; background: var(--ink); color: #fff; font-weight: 500; font-size: 13px; transition: background .18s linear, color .18s linear; }
html body .ksa-launcher:hover { box-shadow: 0 14px 34px -18px rgba(7,16,51,.45) !important; border-color: rgba(7,16,51,.18) !important; }
html body .ksa-launcher:hover .ksa-lic { animation: icTilt .6s cubic-bezier(.3,.7,.3,1) 1; }
html body .ksa-launcher:hover .ksa-lic path { animation: icDraw .7s cubic-bezier(.4,0,.2,1) 1; }
html body .ksa-launcher:hover .ksa-lk { background: var(--ks-blue); }
html body .ksa-launcher:focus-visible { outline: 2px solid var(--ks-blue) !important; outline-offset: 3px; }
html body .ksa-launcher.is-hidden { opacity: 0 !important; visibility: hidden !important; pointer-events: none; transform: translateX(-50%) translateY(10px) !important; }
html body .ksa-launcher.on-dark { background: rgba(10,16,40,.55) !important; color: #E6EEFF !important; border-color: rgba(255,255,255,.12) !important; box-shadow: 0 10px 30px -18px rgba(0,0,0,.6) !important; }
html body .ksa-launcher.on-dark .ksa-lt { color: #9DBBFF; }
html body .ksa-launcher.on-dark .ksa-lk { background: #DCEBFF; color: #071033; }
html body .ksa-launcher.on-dark:hover .ksa-lk { background: #fff; }
@media (max-width: 720px){ html body .ksa-launcher, html body .ksa-launcher:hover { bottom: 14px !important; height: 40px !important; } }
html body.ew-cta-on .ksa-launcher { bottom: 84px !important; }
html body .ksa-launcher, html body .ksa-launcher:hover { transition: box-shadow .25s ease, opacity .3s ease, visibility .3s !important; }
html body .ksa-launcher .ksa-lt, html body .ksa-launcher .ksa-lk { transition: none !important; }
html body .ks-nav .ks-nav-pill { transition: none !important; }
html body .ks-nav .ks-nav-link, html body .ks-nav .ks-nav-cta .ks-btn, html body .ks-nav .ks-burger, html body .ks-nav .ks-nav-logo-img { transition: none !important; }
html body .ksa-scrim { background: rgba(7,16,51,.28) !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
html body .ksa { width: min(720px, calc(100vw - 32px)) !important; height: min(620px, calc(100vh - 48px)) !important; border-radius: 12px !important;
  background: #FFFFFF !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border: 1px solid rgba(7,16,51,.1) !important; outline: 0 !important;
  box-shadow: 0 40px 90px -40px rgba(7,16,51,.45), 0 2px 8px rgba(7,16,51,.05) !important; font-family: var(--font-sans); }
html body .ksa::before, html body .ksa::after { content: none !important; display: none !important; }
html body .ksa-head { padding: 14px 14px 14px 18px !important; gap: 12px !important; border-bottom: 1px solid var(--rule) !important; background: #fff !important; }
html body .ksa-head .ksa-tile { width: 32px !important; height: 32px !important; border-radius: 8px !important; background: #EEF3FF !important; box-shadow: none !important; border: 1px solid rgba(10,91,240,.14); }
html body .ksa-head .ksa-tile::after { content: none !important; }
html body .ksa-head .ksa-tile svg, html body .ksa-head .ksa-glyph svg { width: 16px !important; height: 16px !important; color: var(--ks-blue) !important; fill: none !important; filter: none !important; animation: none !important; }
html body .ksa-title { font: 600 15px/1.2 var(--font-sans) !important; color: var(--ink) !important; letter-spacing: -.01em; }
html body .ksa-status { margin-top: 3px !important; font: 400 12.5px/1 var(--font-sans) !important; color: var(--fg3) !important; gap: 6px !important; }
html body .ksa-dot { width: 6px !important; height: 6px !important; box-shadow: none !important; animation: none !important; background: #22A06B !important; }
html body .ksa-status.is-gold .ksa-dot { background: var(--gold) !important; } html body .ksa-status.is-success .ksa-dot { background: #22A06B !important; }
html body .ksa-ibtn { width: 32px !important; height: 32px !important; border-radius: 8px !important; color: var(--fg2) !important; }
html body .ksa-ibtn:hover { background: var(--slate-100) !important; color: var(--ink) !important; }
html body .ksa-ibtn svg { width: 16px !important; height: 16px !important; }
html body .ksa-ibtn:hover svg { animation: icNudge .5s cubic-bezier(.3,.7,.3,1) 1; }
html body .ksa-body { padding: 20px 20px 8px !important; gap: 14px !important; background: #fff; }
html body .ksa-avatar { width: 26px !important; height: 26px !important; border-radius: 7px !important; background: #EEF3FF !important; border: 1px solid rgba(10,91,240,.12); }
html body .ksa-avatar svg { width: 13px !important; height: 13px !important; color: var(--ks-blue) !important; }
html body .ksa-bubble { padding: 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; border-radius: 0 !important; font: 400 15px/1.6 var(--font-sans) !important; color: var(--ink) !important; }
html body .ksa-msg--user .ksa-bubble { padding: 10px 14px !important; background: var(--ink) !important; color: #fff !important; border-radius: 10px !important; box-shadow: none !important; }
html body .ksa-msg--error .ksa-bubble, html body .ksa-msg--note .ksa-bubble { padding: 10px 14px !important; border-radius: 10px !important; border: 1px solid !important; }
html body .ksa-msg--error .ksa-bubble { background: #FEF3F2 !important; border-color: #F4C7C2 !important; color: #7A271A !important; }
html body .ksa-msg--note .ksa-bubble { background: #FFF8EB !important; border-color: #F6DDA6 !important; }
html body .ksa-typing { padding: 6px 0 !important; }
html body .ksa-trust { margin-left: 36px !important; gap: 4px 14px !important; }
html body .ksa-trust span { padding: 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; font: 400 12.5px/1.4 var(--font-sans) !important; color: var(--fg3) !important; }
html body .ksa-trust svg { width: 13px !important; height: 13px !important; color: var(--fg3) !important; }
html body .ksa-card { margin-left: 36px !important; border-radius: 10px !important; box-shadow: none !important; border: 1px solid var(--rule) !important; }
html body .ksa-card-head { background: #F1FAF5 !important; border-bottom: 1px solid var(--rule) !important; padding: 12px 14px !important; }
html body .ksa-card-head .ks-icon-tile { width: 28px !important; height: 28px !important; border-radius: 7px !important; }
html body .ksa-foot { padding: 12px 18px 12px !important; border-top: 1px solid var(--rule) !important; background: #fff !important; }
html body .ksa-chips { gap: 6px !important; margin-bottom: 10px !important; }
html body .ksa-chip { padding: 7px 11px !important; border-radius: 8px !important; border: 1px solid rgba(7,16,51,.12) !important; background: #fff !important; color: var(--ink) !important; font: 500 13px/1.2 var(--font-sans) !important; box-shadow: none !important; transform: none !important; transition: border-color .2s ease, background .2s ease, color .2s ease !important; }
html body .ksa-chip:hover { border-color: rgba(10,91,240,.35) !important; background: #F5F8FF !important; color: var(--ks-blue) !important; }
html body .ksa-chip svg { width: 13px !important; height: 13px !important; }
html body .ksa-chip:hover svg.i-arrow-right, html body .ksa-chip:hover svg.i-arrow-up-right { animation: icArrow .6s cubic-bezier(.4,0,.2,1) 1; }
html body .ksa-chip--primary { background: var(--ink) !important; border-color: var(--ink) !important; color: #fff !important; }
html body .ksa-chip--primary:hover { background: var(--ks-blue) !important; border-color: var(--ks-blue) !important; color: #fff !important; }
html body .ksa-chip--gold { background: #FFF8EB !important; border-color: #F6DDA6 !important; color: #8A5A00 !important; }
html body .ksa-chip--ghost { border-color: transparent !important; color: var(--fg2) !important; }
html body .ksa-composer { border-radius: 10px !important; border: 1px solid rgba(7,16,51,.14) !important; padding: 4px 4px 4px 14px !important; background: #fff !important; box-shadow: none !important; }
html body .ksa-composer:focus-within { border-color: var(--ks-blue) !important; box-shadow: 0 0 0 3px rgba(10,91,240,.12) !important; }
html body .ksa-input { font: 400 15px/1.4 var(--font-sans) !important; padding: 9px 0 !important; }
html body .ksa-input:focus, html body .ksa-input:focus-visible { outline: none !important; box-shadow: none !important; }
html body .ksa-send { width: 36px !important; height: 36px !important; border-radius: 8px !important; background: var(--ink) !important; box-shadow: none !important; transform: none !important; }
html body .ksa-send:hover:not([disabled]) { background: var(--ks-blue) !important; }
html body .ksa-send:hover:not([disabled]) svg { animation: icArrow .6s cubic-bezier(.4,0,.2,1) 1; }
html body .ksa-send[disabled] { background: var(--slate-200) !important; opacity: 1 !important; }
html body .ksa-send svg { width: 16px !important; height: 16px !important; }
html body .ksa-legal { margin-top: 8px !important; font: 400 12px/1.4 var(--font-sans) !important; color: var(--fg3) !important; }
html body .ksa-legal a { color: var(--fg2) !important; text-decoration: none !important; } html body .ksa-legal a:hover { color: var(--ks-blue) !important; }
@media (max-width: 720px){ html body .ksa { width: 100vw !important; height: 100dvh !important; border-radius: 0 !important; border: 0 !important; } }
@property --ksi-a { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
@keyframes ksiSpin { to { --ksi-a: 360deg; } }
@keyframes ksiFlow { 0% { background-position: 0% 50%; } 100% { background-position: 200% 50%; } }
@keyframes ksiBreath { 0%, 100% { transform: scale(1) rotate(0); } 50% { transform: scale(1.08) rotate(8deg); } }
@keyframes ksiDot { 0%, 80%, 100% { transform: translateY(0); opacity: .35; } 40% { transform: translateY(-3px); opacity: 1; } }
html body .ksa-status { display: none !important; }
html body .ksa-title { font: 600 16px/1.2 var(--font-sans) !important; letter-spacing: -.012em;
  background: linear-gradient(90deg, #0A5BF0 0%, #7C3AED 35%, #FF9A76 55%, #7C3AED 75%, #0A5BF0 100%); background-size: 200% 100%;
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent !important; animation: ksiFlow 8s linear infinite; }
html body .ksa-head .ksa-tile { position: relative; width: 34px !important; height: 34px !important; border-radius: 9px !important; background: #F5F7FF !important; border: 0 !important; isolation: isolate; overflow: visible !important; }
html body .ksa-head .ksa-tile::before { content: "" !important; display: block !important; position: absolute; inset: -1px; border-radius: 10px; padding: 1px; z-index: -1;
  background: conic-gradient(from var(--ksi-a), #0A5BF0, #7C3AED, #FF9A76, #0A5BF0); animation: ksiSpin 6s linear infinite;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); mask-composite: exclude; }
html body .ksa-head .ksa-tile::after { content: "" !important; display: block !important; position: absolute; inset: 4px; border-radius: 50%; z-index: -2; background: radial-gradient(circle, rgba(124,58,237,.18), transparent 70%); filter: blur(6px); }
html body .ksa-head .ksa-tile svg, html body .ksa-head .ksa-glyph svg, html body .ksa-head .ksa-tile .ksa-glyph svg { width: 17px !important; height: 17px !important; color: #3B5BFF !important; stroke: #3B5BFF !important; fill: none !important; opacity: 1 !important; filter: none !important; animation: ksiBreath 4.5s ease-in-out infinite !important; }
html body .ksa-avatar svg, html body .ksa-avatar .ksa-glyph svg { color: #3B5BFF !important; stroke: #3B5BFF !important; fill: none !important; opacity: 1 !important; }
html body .ksa::after { content: "" !important; display: block !important; position: absolute; inset: 0; border-radius: inherit; padding: 1px; pointer-events: none; z-index: 3;
  background: conic-gradient(from var(--ksi-a), transparent 0deg, rgba(10,91,240,.55) 50deg, rgba(124,58,237,.5) 100deg, rgba(255,154,118,.45) 140deg, transparent 190deg, transparent 360deg);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); mask-composite: exclude;
  opacity: 0; animation: ksiSpin 12s linear infinite; transition: opacity .8s ease .2s; }
html body .ksa.is-open::after, html body .ksa--inline::after { opacity: .7; }
html body .ksa-typing i { width: 6px !important; height: 6px !important; background: linear-gradient(135deg, #0A5BF0, #7C3AED) !important; animation: ksiDot 1.2s ease-in-out infinite !important; }
html body .ksa-typing i:nth-child(2) { animation-delay: .15s !important; background: linear-gradient(135deg, #7C3AED, #B06AE6) !important; } html body .ksa-typing i:nth-child(3) { animation-delay: .3s !important; background: linear-gradient(135deg, #B06AE6, #FF9A76) !important; }
html body .ksa-msg { animation: ksaIn .4s cubic-bezier(.2,.7,.2,1) both !important; }
html body .ksa-composer { position: relative; }
html body .ksa-composer:focus-within { border-color: transparent !important; box-shadow: 0 0 0 3px rgba(124,58,237,.08) !important;
  background: linear-gradient(#fff, #fff) padding-box, linear-gradient(90deg, #0A5BF0, #7C3AED, #FF9A76) border-box !important; border: 1px solid transparent !important; }
html body .ksa-send:not([disabled]) { background: linear-gradient(135deg, #0A5BF0, #7C3AED) !important; }
html body .ksa-send:hover:not([disabled]) { background: linear-gradient(135deg, #0A5BF0, #9B5CF0) !important; }
@media (prefers-reduced-motion: reduce){ html body .ksa-title, html body .ksa-head .ksa-tile::before, html body .ksa::after, html body .ksa-head .ksa-tile svg { animation: none !important; } }
.ks-ink.amb-host, .amb-host-l { overflow: hidden; isolation: isolate; }
.ks-ink.amb-host > :not(.amb):not(.ks-glow):not(.mo-hv), .amb-host-l > :not(.amb):not(.as):not(.ks-glow):not(.mo-hv) { position: relative; z-index: 1; }
.amb-host-l > .as { z-index: 1; }
.amb-host-l > .ks-container-wide, .amb-host-l > .ks-container { z-index: 2; }
@keyframes ambFormL {
  0%   { opacity: .2;  stroke-dasharray: calc(var(--L) * .06px) calc(var(--L) * 1px); stroke-dashoffset: 0; }
  55%  { opacity: .22; stroke-dasharray: calc(var(--L) * .5px) calc(var(--L) * 1px);  stroke-dashoffset: calc(var(--L) * -.55px); }
  80%  { opacity: .14; stroke-dasharray: calc(var(--L) * .5px) calc(var(--L) * 1px);  stroke-dashoffset: calc(var(--L) * -.8px); }
  100% { opacity: 0;   stroke-dasharray: calc(var(--L) * .5px) calc(var(--L) * 1px);  stroke-dashoffset: calc(var(--L) * -1.05px); }
}
.amb.amb--light path.is-hot { animation-name: ambFormL !important; }
.amb.amb--light path { stroke-width: 1.1; }
.amb path { stroke-width: 1.6 !important; opacity: 0; }
.amb.amb--light path { stroke-width: 1.3 !important; }
.amb path.is-hot { animation: none !important; }
.amb path.amb-ly { opacity: 0; fill: none; stroke-linecap: round; stroke-linejoin: round; }
.stage-dark::before, .ks-ink::before, .if-ink-photo, .ks-glow { background-image: none !important; background: none !important; }
:root { --r-ui: 10px; --bg: #FFFFFF; --bg-subtle: #FFFFFF; --bg-tint: #ECF1FA; --surface: #FFFFFF; --rule: rgba(12,24,60,.08); --deep: #060B1F; }
html, body { background: var(--bg) !important; }
html body section[class*="-hero"]:not(.if-dark-hero):not(.dark):not(.mo-h-night):not(.mo-h-cinema), html body section.hero:not(.if-dark-hero):not(.dark), html body .kn-hero:not(.mo-h-night):not(.mo-h-cinema) { background: var(--bg) !important; }
html body .ks-bg-subtle { background: var(--bg-subtle) !important; }
html body .ks-section:not(.ks-bg-subtle):not(.ks-ink):not(.dark):not(.stage-dark) { background-color: transparent; }
html body .ks-card, html body .pillar, html body .tile, html body .ew-wiz { background-color: var(--surface); }
html body .ks-bg-subtle .ks-card { box-shadow: 0 1px 0 rgba(12,24,60,.03); }
html body .ks-foot { background: var(--deep) !important; }
html body .ks-ink:not(.ks-foot) { background-color: var(--deep) !important; }
html body .ks-nav-pill { border-radius: var(--r-ui) !important; }
html body .ks-nav .ks-nav-link, html body .ks-nav-pill .ks-burger { border-radius: calc(var(--r-ui) - 3px) !important; }
html body .ks-nav .ks-mega { border-radius: var(--r-ui) !important; }
html body .ks-foot-lift { background: var(--bg) !important; }
html body .ks-media-frame { background: transparent !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important; overflow: visible !important; }
html body .ks-media-frame > .fx-tilt > figure, html body .ks-media-frame > figure { border-radius: var(--r-xl) !important; overflow: hidden !important; }
html { overflow-x: clip !important; }
html body { overflow-x: clip !important; overflow-y: visible !important; }
.ks-mcta { position: fixed; left: 0; right: 0; bottom: 0; z-index: 950; display: none; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.96); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-top: 1px solid var(--border); box-shadow: 0 -12px 30px -20px rgba(7,16,51,.35); transform: translateY(110%); transition: transform .4s var(--ease-out); }
.ks-mcta b { display: block; font-size: 14px; color: var(--fg1); } .ks-mcta small { display: block; font-size: 12.5px; color: var(--fg3); }
.ks-mcta.is-on { transform: none; }
@media (max-width: 720px) { .ks-mcta { display: flex; } body.ks-mcta-on .ksa-launcher { bottom: 84px !important; } }
.ks-foot-grid { grid-template-columns: 1.4fr repeat(5, minmax(0, 1fr)) !important; }
.ks-nav-links > .ks-nav-link { white-space: nowrap; }
@media (max-width: 1100px) { .ks-foot-grid { grid-template-columns: 1fr 1fr !important; } .ks-foot-brand { grid-column: 1 / -1; } }
@media (max-width: 720px) { .ks-foot-grid { grid-template-columns: 1fr !important; } }
.ks-mega--offers .ks-mega-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ks-foot-res { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 2.2fr); gap: clamp(28px, 4vw, 64px); padding: clamp(36px, 4vw, 56px) 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.ks-foot-res-intro h5 { margin: 0 0 10px !important; } .ks-foot-res-intro p { margin: 0; max-width: 34ch; font-size: 14.5px; line-height: 1.6; color: rgba(236,241,255,.62) !important; }
.ks-foot-res-groups { display: grid; gap: 22px; }
.ks-foot-rg { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 18px; align-items: baseline; padding-bottom: 20px; border-bottom: 1px solid rgba(255,255,255,.07); }
.ks-foot-rg:last-child { border-bottom: 0; padding-bottom: 0; }
.ks-foot-rg h6 { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; margin: 0; font-size: 14px; font-weight: 600; color: #fff; }
.ks-foot-rg h6 svg { width: 16px; height: 16px; color: #8DB8FF; fill: none; flex: none; }
.ks-foot-rg h6 em { flex-basis: 100%; margin-left: 25px; font-style: normal; font-weight: 400; font-size: 12.5px; color: rgba(236,241,255,.5); }
.ks-foot-rl { display: flex; flex-wrap: wrap; gap: 8px 0; }
.ks-foot-rl a { position: relative; display: inline-flex; align-items: center; font-size: 14px; line-height: 1.5; color: rgba(236,241,255,.7) !important; padding-right: 14px; margin-right: 12px; transition: color .25s var(--ease-out); }
.ks-foot-rl a::after { content: ""; position: absolute; right: 0; top: 50%; width: 4px; height: 4px; border-radius: 50%; background: rgba(141,184,255,.45); transform: translateY(-50%); }
.ks-foot-rl a:last-child::after { display: none; } .ks-foot-rl a:last-child { padding-right: 0; margin-right: 0; }
.ks-foot-rl a:hover { color: #fff !important; }
.ks-foot-rg--free { margin-top: 4px; padding: 18px 20px; border: 1px solid rgba(141,184,255,.22); border-radius: 10px; background: rgba(10,132,255,.06); }
.ks-foot-rg--free .ks-foot-rl a { color: rgba(236,241,255,.85) !important; }
@media (max-width: 991px) { .ks-foot-res { grid-template-columns: 1fr; } }
@media (max-width: 720px) { .ks-foot-rg { grid-template-columns: 1fr; gap: 10px; } .ks-foot-rg h6 em { margin-left: 25px; } }
html body:not([data-page="home"]) :is(.ks-foot-lift, main, .ks-foot-lift > main) > section { margin-left: 10px !important; margin-right: 10px !important; border-radius: 10px !important; overflow: clip !important; }
html body:not([data-page="home"]) :is(.ks-foot-lift, main, .ks-foot-lift > main) > section + section { margin-top: 10px !important; }
html body:not([data-page="home"]) :is(.ks-foot-lift, main, .ks-foot-lift > main) > section:first-of-type { margin-top: 0 !important; border-top-left-radius: 0 !important; border-top-right-radius: 0 !important; }
html body:not([data-page="home"]) :is(.ks-foot-lift, main, .ks-foot-lift > main) > section > .amb, html body:not([data-page="home"]) :is(.ks-foot-lift, main, .ks-foot-lift > main) > section > .mo-hv, html body:not([data-page="home"]) :is(.ks-foot-lift, main, .ks-foot-lift > main) > section > .fx-aurora, html body:not([data-page="home"]) :is(.ks-foot-lift, main, .ks-foot-lift > main) > section > .fx-sphere, html body:not([data-page="home"]) :is(.ks-foot-lift, main, .ks-foot-lift > main) > section > canvas { border-radius: inherit; }
html body:not([data-page="home"]) .ks-foot-lift { background: var(--bg); }
@media (max-width: 760px) {
  html body:not([data-page="home"]) :is(.ks-foot-lift, main, .ks-foot-lift > main) > section { margin-left: 6px !important; margin-right: 6px !important; }
  html body:not([data-page="home"]) :is(.ks-foot-lift, main, .ks-foot-lift > main) > section + section { margin-top: 6px !important; }
}
.ks-foot-res { display: block !important; grid-template-columns: none !important; padding: clamp(36px, 4vw, 56px) 0 !important; }
.ks-foot-res-intro { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 24px; margin-bottom: 28px; }
.ks-foot-res-intro h5 { margin: 0 !important; } .ks-foot-res-intro p { max-width: none !important; font-size: 14px !important; }
.ks-foot-res-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) minmax(0, 2fr); gap: 32px clamp(20px, 2.4vw, 36px); }
.ks-foot-rc h6 { display: flex; align-items: baseline; gap: 8px; margin: 0 0 14px; padding-bottom: 12px; border-bottom: 1px solid rgba(255,255,255,.1); font-size: 14px; font-weight: 600; color: #fff; }
.ks-foot-rc h6 span { font-weight: 400; font-size: 12px; color: rgba(236,241,255,.4); }
.ks-foot-rc ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.ks-foot-rc--wide ul { grid-template-columns: 1fr 1fr; column-gap: clamp(16px, 2vw, 28px); }
.ks-foot-rc a { position: relative; display: inline-block; font-size: 13.5px; line-height: 1.4; color: rgba(236,241,255,.68) !important; transition: color .25s var(--ease-out), transform .3s var(--ease-out); }
.ks-foot-rc a::after { content: ""; position: absolute; left: 0; right: 0; bottom: -2px; height: 1px; background: rgba(141,184,255,.7); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ease-out); }
.ks-foot-rc a:hover { color: #fff !important; } .ks-foot-rc a:hover::after { transform: scaleX(1); }
@media (max-width: 1200px) { .ks-foot-res-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .ks-foot-rc--wide { grid-column: span 2; } }
@media (max-width: 760px) { .ks-foot-res-grid { grid-template-columns: 1fr 1fr; } .ks-foot-rc--wide { grid-column: 1 / -1; } }
@media (max-width: 480px) { .ks-foot-res-grid { grid-template-columns: 1fr; } .ks-foot-rc--wide ul { grid-template-columns: 1fr; } }
@media (max-width: 720px) { .ks-foot-grid { grid-template-columns: 1fr 1fr !important; gap: 28px 20px; } .ks-foot-brand { grid-column: 1 / -1; } }
@media (max-width: 480px) { .ks-foot-res-grid { grid-template-columns: 1fr 1fr; gap: 26px 18px; } .ks-foot-rc--wide { grid-column: 1 / -1; } .ks-foot-rc--wide ul { grid-template-columns: 1fr 1fr; } }
.ks-foot-word { position: relative; overflow: hidden; margin-top: -8px; line-height: .8; pointer-events: none; user-select: none; }
.ks-foot-word span { display: block; text-align: center; font-family: var(--font-display); font-weight: 700; font-size: 20.5vw; letter-spacing: -.045em; white-space: nowrap;
  background: linear-gradient(180deg, rgba(141,184,255,.11) 0%, rgba(141,184,255,.035) 55%, rgba(141,184,255,0) 92%); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent;
  transform: translateY(calc(34% * (1 - var(--fr, 1)))); margin-bottom: -4.2vw; }
.ks-foot-inner > .ks-container-wide { transform: translateY(calc(40px * (1 - var(--fr, 1)))); opacity: calc(.35 + .65 * var(--fr, 1)); will-change: transform, opacity; }
.ks-foot::before { opacity: calc(.4 + .6 * var(--fr, 1)); }
.ks-foot-lift { border-bottom-left-radius: calc(18px * var(--fr, 0)); border-bottom-right-radius: calc(18px * var(--fr, 0)); }
@media (prefers-reduced-motion: reduce) { .ks-foot-inner > .ks-container-wide, .ks-foot-word span { transform: none !important; opacity: 1 !important; } }
.ks-foot-word { margin-top: 8px; line-height: 0; }
.ks-foot-word span { display: none; }
.ks-foot-word svg { display: block; width: 100%; height: auto; margin-bottom: -2.4%; overflow: visible; transform: translateY(calc(30% * (1 - var(--fr, 1)))); }
.ks-foot-word text { font-family: var(--font-display); font-weight: 700; font-size: 186px; }
@media (prefers-reduced-motion: reduce) { .ks-foot-word svg { transform: none !important; } }
.ks-foot-word text { font-family: "Poppins", var(--font-display) !important; font-weight: 600 !important; letter-spacing: 0; }
.ks-foot-word text { font-family: "Poppins", var(--font-display) !important; font-weight: 600 !important; font-size: 200px !important; letter-spacing: -.02em !important; }
html body .ks-foot-lift { box-shadow: none !important; border-radius: 0 !important; background: var(--bg) !important; }
html body .ks-foot-lift::after { content: none !important; display: none !important; }
html body .ks-foot-lift > section:last-of-type, html body .ks-foot-lift > main > section:last-of-type, html body .ks-foot-lift > main:last-child > section:last-child { margin-bottom: 0 !important; border-bottom-left-radius: 0 !important; border-bottom-right-radius: 0 !important; }
html body .ks-foot { margin-top: 0 !important; border-top: 0 !important; border-top-left-radius: 0 !important; border-top-right-radius: 0 !important; }
html body .ks-foot::after { display: none !important; }
html body .ks-foot { margin-left: 10px !important; margin-right: 10px !important; margin-bottom: 10px !important; border-radius: 10px !important; overflow: clip !important; }
html body .ks-foot-lift > section:last-of-type, html body .ks-foot-lift > main > section:last-of-type, html body .ks-foot-lift > main:last-child > section:last-child { margin-bottom: 10px !important; border-bottom-left-radius: 10px !important; border-bottom-right-radius: 10px !important; }
@media (max-width: 760px) { html body .ks-foot { margin-left: 6px !important; margin-right: 6px !important; margin-bottom: 6px !important; } html body .ks-foot-lift > section:last-of-type { margin-bottom: 6px !important; } }
html body.ks-foot-layered .ks-foot, html body.ks-foot-layered .ks-foot.is-pinned { position: fixed !important; top: 0 !important; bottom: auto !important; left: 0; right: 0; z-index: 0 !important; margin: 0 10px !important; will-change: transform; }
html body.ks-foot-layered .ks-foot-lift { position: relative; z-index: 1; background: var(--bg) !important; }
.ks-foot-spacer { position: relative; z-index: 0; pointer-events: none; }
@media (max-width: 760px) { html body.ks-foot-layered .ks-foot { margin: 0 6px !important; } }
html body .ks-foot-cta { padding-top: clamp(120px, 12vw, 150px) !important; }
@media (max-width: 991px) { html body .ks-foot-cta { padding-top: 104px !important; } }
.ks-hov, .cons a, .of-persona, .of-out, .of-more-card, .of-probs li, .pillar, .ks-card--hover, .ks-card.ks-card--faceted, .ins-row, .ind-row, .ks-mega-link, .ew-card, .ew-b, .lp-caps .ks-card, .lp-related a, .lp-prob, .stage, .ks-foot-office { position: relative; transition: translate .5s cubic-bezier(.2,.7,.2,1), box-shadow .5s cubic-bezier(.2,.7,.2,1), border-color .35s ease, background-color .35s ease, opacity .9s var(--ease-out), transform .9s var(--ease-out) !important; }
.ks-hov::after, .cons a::after, .of-persona::after, .of-out::after, .of-more-card::after, .of-probs li::after, .pillar::after, .ks-card--hover::after, .ks-card.ks-card--faceted::after, .ew-card::after, .ew-b::after, .lp-caps .ks-card::after, .lp-related a::after, .lp-prob::after, .stage::after {
  content: "" !important; position: absolute; inset: 0; border-radius: inherit; padding: 1px; pointer-events: none; z-index: 2;
  background: linear-gradient(135deg, #0A5BF0, #7C3AED 55%, #FF9A76); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); mask-composite: exclude;
  opacity: 0; transform: none !important; transition: opacity .4s ease !important; display: block !important; width: auto !important; height: auto !important; }
@media (hover: hover) {
  .ks-hov:hover, .cons a:hover, .of-persona:hover, .of-out:hover, .of-more-card:hover, .of-probs li:hover, .pillar:hover, .ks-card--hover:hover, .ks-card.ks-card--faceted:hover, .ew-card:hover, .ew-b:hover, .lp-caps .ks-card:hover, .lp-related a:hover, .lp-prob:hover, .stage:hover { translate: 0 -4px; border-color: transparent !important; box-shadow: 0 22px 44px -26px rgba(10,91,240,.38) !important; }
  .ks-hov:hover::after, .cons a:hover::after, .of-persona:hover::after, .of-out:hover::after, .of-more-card:hover::after, .of-probs li:hover::after, .pillar:hover::after, .ks-card--hover:hover::after, .ks-card.ks-card--faceted:hover::after, .ew-card:hover::after, .ew-b:hover::after, .lp-caps .ks-card:hover::after, .lp-related a:hover::after, .lp-prob:hover::after, .stage:hover::after { opacity: 1; }
  .ins-row:hover, .ind-row:hover, .ks-mega-link:hover { background: var(--slate-50); border-radius: 10px; }
}
.dark .ks-hov::after, .ks-ink .ks-hov::after, .cons a.is-lead::after { background: linear-gradient(135deg, #6EA8FF, #A78BFA 55%, #FFB597); }
.cons a.is-lead:hover { box-shadow: 0 22px 44px -26px rgba(10,91,240,.6) !important; }
.ks-hov.is-in:hover, .cons a.is-in:hover, .of-persona.is-in:hover, .of-out.is-in:hover, .of-more-card.is-in:hover, .of-probs li.is-in:hover, .pillar.is-in:hover, .ew-card.is-in:hover, .ew-b.is-in:hover, .lp-prob.is-in:hover, .stage.is-in:hover { transform: none !important; }
.kn-hero--as .as { position: absolute; z-index: 1; right: var(--gutter); top: 50%; transform: translateY(-50%); width: min(38vw, 560px); height: min(72%, 520px); max-height: calc(100% - 140px); pointer-events: none; }
@media (max-width: 1200px) { .kn-hero--as .as { width: min(36vw, 480px); } .kn-hero--as .row > [class*="col-"]:first-child { max-width: 60%; flex: 0 0 60%; } }
.ks-card--ink li, .ks-card--ink .ks-list li, .shift-new li, .shift-new .ks-list li, .agent-mock li, .agent-mock p, .agent-mock small, [class*="-new"] .ks-list li { color: rgba(236,241,255,.86) !important; }
.shift-new .ks-chip, .ks-card--ink .ks-chip { color: #8DB8FF !important; }
.ks-list li { display: grid !important; grid-template-columns: 14px minmax(0, 1fr); column-gap: 12px; align-items: start; padding-left: 0 !important; }
.ks-list li::before { position: static !important; margin-top: .5em !important; align-self: start; }
@media (min-width: 992px) {
  html.mo-on .mo-h-diptych .mo-hv, html.mo-on .mo-h-stair .mo-hv, html.mo-on .mo-h-frame .mo-hv { top: 50% !important; bottom: auto !important; height: min(62vh, 560px) !important; min-height: 380px; transform: translateY(calc(-50% + 40px)) !important; }
  html.mo-on .mo-h-diptych, html.mo-on .mo-h-stair, html.mo-on .mo-h-frame { min-height: max(min(94vh, 920px), 720px) !important; }
}
@media (max-width: 991px) { html.mo-on .mo-h .mo-hv { transform: none !important; min-height: 0 !important; } }
html.mo-on .mo-h .mo-hv-f1 { transform: translateY(calc(var(--p, 0) * -18px)) !important; }
html.mo-on .mo-h .mo-hv-f2 { transform: translateY(calc(var(--p, 0) * 18px)) !important; }
html.mo-on .mo-h .mo-hv-f3 { transform: translateY(calc(var(--p, 0) * -10px)) !important; }
@media (max-width: 991px) {
  html.mo-on .mo-h-diptych .mo-hv, html.mo-on .mo-h-stair .mo-hv, html.mo-on .mo-h-frame .mo-hv, html.mo-on .mo-h-horizon .mo-hv { position: relative !important; top: auto !important; bottom: auto !important; right: auto !important; left: auto !important; width: 100% !important; height: 52vw !important; max-height: 420px; margin: 28px 0 0; }
  html.mo-on .mo-h .mo-hv-f1, html.mo-on .mo-h .mo-hv-f2, html.mo-on .mo-h .mo-hv-f3 { transform: none !important; }
}
html body .shift-new .ks-chip, html body .shift-new .ks-chip--ondark, html body .ks-card--ink .ks-chip, html body .dark .ks-chip, html body .stage-dark .ks-chip { color: #8DB8FF !important; border-color: rgba(141,184,255,.45) !important; background: rgba(141,184,255,.08) !important; }
html.mo-on .mo-h .mo-hv-f img, html.mo-on .mo-h.is-in .mo-hv-f img { transform: scale(1.12) !important; }
html.mo-on .mo-h .mo-hv-f { background: transparent !important; }
html body .sx-hero { background: #fff !important; color: var(--fg1) !important; }
html body .sx-hero .ks-display, html body .sx-hero h1 { color: var(--ink) !important; }
html body .sx-hero > .amb, html body .sx-hero > .mo-hv, html body .sx-hero > .as, html body .sx-hero > .kt-orbit { display: none !important; }
html.mo-on body:not([data-page="home"]) .shift-new .ks-chip, html.mo-on body:not([data-page="home"]) .shift-new .ks-chip--ondark, html.mo-on body:not([data-page="home"]) .ks-card--ink .ks-chip, html.mo-on body:not([data-page="home"]) .dark .ks-chip { color: #8DB8FF !important; border-color: rgba(141,184,255,.45) !important; background: rgba(141,184,255,.08) !important; }
.cta .cta-in { display: flex !important; flex-direction: column; align-items: center; text-align: center; max-width: 820px; grid-template-columns: none !important; }
.cta .cta-in > .if-r { display: flex; flex-direction: column; align-items: center; }
.cta .cta-in h2 { max-width: 16ch; margin-left: auto; margin-right: auto; text-wrap: balance; }
.cta .cta-in .ks-lead { margin-left: auto !important; margin-right: auto !important; }
.cta .cta-in .hero-cta { justify-content: center; margin-top: 32px; }
.cta .cta-in .panel { display: none !important; }
html body .eyebrow i, html body .eyebrow::before, html body .of-eyebrow::before, html body .sx-eyebrow::before, html body .ks-wedge::before, html body .ks-wedge::after, html body .ks-eyebrow::before, html body .ofs-k::before, html body .ofs-k--sol::before, html body .of-cta .eyebrow i, html body .pb-k::before, html body .mo-eyebrow::before, html body .lp-eyebrow::before { display: none !important; content: none !important; }
html body .eyebrow, html body .of-eyebrow, html body .sx-eyebrow, html body .ks-wedge, html body .ks-eyebrow, html body .ofs-k { gap: 0 !important; padding-left: 0 !important; }
html body .ks-icon-tile, html body .ks-icon-tile--gold, html body .ks-icon-tile--ink, html body .ks-ink .ks-icon-tile, html body .stage .ks-icon-tile, html body .ks-mega-link .ks-icon-tile, html body .of-ico, html body .ofo-ico, html body .oc-ico, html body .of-done-ico, html body .ofm-ico, html body .kv-ico, html body .kv-ico--ok, html body .ofb-tile, html body .ofi-fi, html body .pb-road span, html body .pb-signal span, html body .ksa-tile, html body .ksa-launcher .ksa-tile, html body .ksa-head .ksa-tile, html body .ksa-avatar, html body .ks-foot-social a, html body .ofp-photo figcaption .of-ico, html body .ksa-card-head .ks-icon-tile { background: transparent !important; background-image: none !important; border: 0 !important; box-shadow: none !important; }
html body .ksa-head .ksa-tile::before, html body .ksa-head .ksa-tile::after, html body .ksa-tile::after, html body .ofo-ico i { display: none !important; content: none !important; }
html body .ks-icon-tile svg, html body .of-ico svg, html body .ofo-ico svg, html body .oc-ico svg, html body .ofm-ico svg, html body .kv-ico svg, html body .ofi-fi svg, html body .pb-road span svg, html body .pb-signal span svg { color: var(--ks-blue); }
html body .ks-ink .ks-icon-tile svg, html body .dark .ks-icon-tile svg, html body .stage-dark .ks-icon-tile svg, html body .ks-card--ink .ks-icon-tile svg, html body .stage--ondark .ks-icon-tile svg { color: #8DB8FF; }
html body .ks-icon-tile--gold svg, html body .stage--gold .ks-icon-tile svg { color: var(--gold-deep); }
html body .of-done-ico svg { color: var(--success); }
html body .pb-signal span svg { color: #C2410C; }
html body .ks-foot-social a { color: rgba(236,241,255,.8) !important; }
html body .ks-mega-link .ks-icon-tile { width: 24px !important; height: 24px !important; }
html.mo-on body .ks-icon-tile, html.mo-on body .ks-ink .ks-icon-tile, html.mo-on body .ks-icon-tile--gold, html body .ks-nav .ks-mega-link .ks-icon-tile, html body a:hover .ks-icon-tile, html body button:hover .ks-icon-tile, html body .ks-card:hover .ks-icon-tile, html body .stage:hover .ks-icon-tile { background: transparent !important; background-image: none !important; border: 0 !important; box-shadow: none !important; }
html body .ks-nav .ks-nav-link.is-active::before { display: none !important; content: none !important; }
html body .ks-nav .ks-nav-link.is-active { padding-left: 10px !important; }
html body .ofr-app, html body .ofr-card-ico, html body .ofm-ico, html body .kv-ico { background: transparent !important; background-image: none !important; border: 0 !important; box-shadow: none !important; color: var(--ks-blue) !important; }
html body .ofr-app svg, html body .ofr-card-ico svg { color: var(--ks-blue) !important; stroke: currentColor; }
html body .ofr-app { width: auto !important; height: auto !important; padding: 0 !important; }
html body .ofr-app svg { width: 40px !important; height: 40px !important; }
html body .ofr-app { display: none !important; }
html body .ofr-title { margin-top: 14px !important; }
html body .ks-bg-subtle, html.mo-on body .ks-bg-subtle, html body section.ks-section.ofr-sec, html body section.ks-section.ofo-sec, html body section.ks-section.ofp-sec, html body .of-top, html body body[data-page="offer"] .of-top, html body .ofs-stage, html body .of-problem, html body .ofh-sec, html body .of-faqsec { background: #fff !important; background-image: none !important; }
.ks-nav-item.is-open .ks-mega { opacity: 1 !important; visibility: visible !important; transform: none !important; pointer-events: auto !important; }
.ks-nav-item.is-open > .ks-nav-link svg { transform: rotate(180deg); }
.ks-mega-foot { display: none !important; }
.ks-mobile-group-h { display: block; padding: 12px 0 6px; font-weight: 600; font-size: 13px; color: var(--fg3); }
html body .ks-icon-tile svg, html body .ks-icon-tile--gold svg, html body .ks-icon-tile--ink svg, html body .stage--gold .ks-icon-tile svg, html body .of-ico svg, html body .ofo-ico svg, html body .oc-ico svg, html body .ofm-ico svg, html body .kv-ico svg, html body .ofi-fi svg, html body .pb-road span svg, html body .pb-signal span svg, html body .val .ks-icon-tile svg, html body .ps-ic svg, html body .ps-side a svg, html body .sx-eyebrow svg, html body .of-eyebrow svg, html body .ew-fine svg, html body .ew-trust-row svg, html body .cs-outcomes svg, html body .ih-card em svg, html body .cs-go svg, html body .pb-k svg, html body .ps-chip svg, html body .of-fc-ic svg, html body .ps-kpi svg, html body .ofo-ico i { color: var(--ks-blue) !important; stroke: var(--ks-blue) !important; }
html body :is(.ks-ink, .dark, .stage-dark, .ks-card--ink, .mo-h-night, .mo-h-cinema, .ks-foot, .of-dark) .ks-icon-tile svg, html body :is(.ks-ink, .dark, .stage-dark, .ks-card--ink, .mo-h-night, .mo-h-cinema, .ks-foot, .of-dark) :is(.of-ico, .ofo-ico, .ps-ic) svg, html body .ks-foot-rg h6 svg, html body .jn-dur svg, html body .ks-foot-social a svg { color: #8DB8FF !important; stroke: #8DB8FF !important; }
html body .of-done-ico svg, html body .ofi-ok svg, html body .ofi-a i svg, html body .ofi-file em svg, html body .of-ok svg, html body .ew-ok svg { color: var(--success) !important; stroke: var(--success) !important; }
html body .pb-k[style*="color"], html body .sx-eyebrow[style*="color"], html body .of-eyebrow[style*="color"] { color: var(--ks-blue) !important; }
html body :is(div, article, figure, li, section, span, p, img, video, figure)[class]:not(a):not(button):not([role="button"]):not([data-ks-book]):not([data-ks-ask]):not([data-ps]):not(.ps-chip):not(.ew-chip):not(.ew-tile):not(.ew-radio):not(.ofb-pill):not(.ks-nav-item):not(.ks-mega-link):not(.jn-card):not(.acc-p):not(.sx-cap):not(.ind-row):not(.caps-item):not(.ih-filters *):not(summary):not(.of-faq details):not(.ks-chip):not(.ofi-chip):not(.kt-ring):not(.wall-tile):not(.ksa *):not(.ks-foot *):not(.ks-nav *):hover { translate: 0 0; }
html body :is(.ks-card, .ew-b, .ew-card, .ew-role, .ew-topic, .of-persona, .of-out, .of-probs li, .ofo, .ofp-card, .sx-rung, .sx-station, .ps-kpi, .ps-card, .cs-results div, .cs-steps li, .val, .ks-stat, .sx-lens-vis .sx-chip, .pb-ui, .pb-float, .pb-msg, .ofr-pt, .of-cred > div, .ew-priv > div, .ofo-art, .kv-card, .stage, .lp-prob, .mo-ed, .ks-media, .sx-photo, .ew-client, .cs-quote, .of-report):not(a):not([data-ks-book]):not([data-ks-ask]):hover { translate: 0 0 !important; transform: none !important; box-shadow: none !important; border-color: var(--border) !important; background-color: inherit; }
html body :is(.ks-card, .ew-b, .ew-card, .of-persona, .of-out, .of-probs li, .ofp-card, .sx-rung, .ps-kpi, .ps-card, .val, .kv-card, .stage, .lp-prob, .of-cred > div, .ew-priv > div):not(a):not([data-ks-book]):not([data-ks-ask])::before { opacity: 0 !important; }
html body :is(.ks-card, .ew-b, .ew-card, .of-persona, .of-out, .of-probs li, .ofp-card, .sx-rung, .ps-kpi, .ps-card, .val, .kv-card, .stage, .lp-prob):not(a):not([data-ks-book]):not([data-ks-ask]):hover img, html body :is(.sx-photo, .ks-media, .mo-ed, .ofo-art):hover img { transform: none !important; }
html body :is(.ks-card, .ew-b, .ew-card, .of-persona, .of-out, .of-probs li, .ofp-card, .sx-rung, .ps-kpi, .ps-card, .val, .kv-card, .stage, .lp-prob, .of-cred > div, .ew-priv > div, .sx-photo, .ks-media, .mo-ed):not(a):not([data-ks-book]):not([data-ks-ask]) { cursor: default; }
html body :is(.ks-ink, .dark, .stage-dark, .of-dark) :is(.ks-card, .ofp-card, .sx-rung, .of-out):not(a):hover { border-color: rgba(255,255,255,.1) !important; }
html body .ofp-card.is-tint:hover { background-color: var(--ks-blue-50) !important; }
html body .sx-flow::before, html body .sx-flow::after, html body .sx-station::before,
html body .sx-ladder::before, html body .sx-ladder::after, html body .sx-rung::before,
html body .steps::before, html body .steps::after, html body .step::before,
html body .of-steps::before, html body .of-steps::after,
html body .ofh-line, html body .ofh-fill,
html body .jn::before, html body .jn::after,
html body .pb-arc, html body .ps-line .dot,
html body .ew-rail, html body .cs-side a::after,
html body .tl::before, html body .tl-item::before,
html body .kv-road-l, html body .kv-road-f,
html body .ind-list::before, html body .caps-item { border-left-color: transparent !important; }
html body .sx-flow::before, html body .sx-flow::after, html body .sx-station::before,
html body .sx-ladder::before, html body .sx-ladder::after, html body .sx-rung::before,
html body .steps::before, html body .steps::after, html body .step::before,
html body .of-steps::before, html body .of-steps::after,
html body .ofh-line, html body .ofh-fill,
html body .jn::before, html body .jn::after,
html body .pb-arc, html body .tl::before, html body .tl-item::before,
html body .kv-road-l, html body .kv-road-f, html body .ofw-stages::before { content: none !important; display: none !important; }
html body .sx-flow, html body .sx-ladder, html body .steps, html body .of-steps { padding-top: 0 !important; }
html body .sx-station, html body .step { padding-top: 0 !important; }
html body .sx-rung { min-height: 0 !important; }
html body .ofh-step .ofh-n { box-shadow: none !important; }
html body .sx-steps3::before, html body .sx-steps3::after, html body .sx-steps3 > *::before { content: none !important; display: none !important; }
html body .sx-steps3 { padding-top: 0 !important; } html body .sx-steps3 > * { padding-top: 0 !important; }
html body .sx-chip, html body .sx-photo-cap, html body .sx-stat, html body .sx-caps-tag, html body .sx-caps-idx, html body .caps-frame .tag, html body .caps-idx, html body .ps-floats, html body .ps-float, html body .pb-float, html body .pb-msg, html body .ofp-photo figcaption, html body .ew-prev-note, html body .of-top-tag, html body .mw-tile span, html body .ofs-th span, html body .kn-tile span, html body .mo-hv-cap, html body .sx-band-pts + .sx-band-chip, html body .cs-hero-img .cs-chip, html body .lw-hero-img .lw-chip, html body .ofh-card { display: none !important; }
html body .sx-lens-steps > div { grid-template-columns: 36px minmax(0, 1fr) !important; }
html body .sx-lens-steps > div > div { display: block !important; }
html body .sx-lens-steps b { display: block !important; margin-bottom: 4px; }
html body .sx-lens-steps p { display: block !important; margin: 0 !important; }
html body .ps-card .pb-msg { display: block !important; position: static !important; transform: none !important; }
html body .pb-tile:hover { translate: 0 0 !important; transform: none !important; box-shadow: none !important; background: #fff !important; color: inherit !important; }
html body .pb-tile:hover .pb-ui, html body .pb-tile:hover .pb-float, html body .pb-tile:hover .pb-msg, html body .pb-tile:hover .pb-arc, html body .pb-tile:hover .pb-road div, html body .pb-tile:hover img, html body .pb-tile:hover .pb-kpis div, html body .pb-tile:hover .pb-q, html body .pb-tile:hover .pb-next { transform: none !important; translate: 0 0 !important; filter: none !important; }
html body .pb-tile { transition: border-color .35s ease !important; }
html body .pb-tile::before { transition: opacity .4s ease !important; }
html body :is(.of-persona, .of-out, .of-probs li, .ofo, .lp-prob, .stage, .ew-b, .sx-rung, .oc-card, .ofr-card, .ofo-card, .of-deliv li, .ofp-card, .commit > div, .ind-row:not(a), .step, .acc-p, .kv-card, .ks-card:not(a):not([data-ks-book]):not([data-ks-ask]), .ks-hov:not(a):not(button)):hover,
html body :is(.of-persona, .of-out, .of-probs li, .ofo, .lp-prob, .stage, .ew-b, .sx-rung, .oc-card, .ofr-card, .ofo-card, .of-deliv li, .ofp-card, .commit > div, .step, .acc-p, .kv-card, .ks-card:not(a):not([data-ks-book]):not([data-ks-ask]), .ks-hov:not(a):not(button)):hover * { translate: 0 0 !important; transform: none !important; box-shadow: none !important; border-color: var(--border) !important; background-color: inherit; filter: none !important; }
html body :is(.of-persona, .of-out, .of-probs li, .ofo, .lp-prob, .stage, .ew-b, .sx-rung, .oc-card, .ofr-card, .ofo-card, .of-deliv li, .ofp-card, .ks-card:not(a):not([data-ks-book]):not([data-ks-ask]), .ks-hov:not(a):not(button)):hover::before,
html body :is(.of-persona, .of-out, .of-probs li, .ofo, .lp-prob, .stage, .ew-b, .sx-rung, .oc-card, .ofr-card, .ofo-card, .of-deliv li, .ofp-card, .ks-card:not(a):not([data-ks-book]):not([data-ks-ask]), .ks-hov:not(a):not(button)):hover::after { opacity: 0 !important; }
html body :is(.of-persona, .of-out, .of-probs li, .ofo, .lp-prob, .stage, .ew-b, .sx-rung, .oc-card, .ofr-card, .ofo-card, .of-deliv li, .ofp-card, .ks-card:not(a), .ks-hov:not(a):not(button)) { cursor: default; }
html body :is(.ks-ink, .dark, .stage-dark, .ks-card--ink) :is(.of-persona, .of-out, .of-probs li, .ofo, .oc-card, .ks-card:not(a), .ks-hov:not(a):not(button)):hover { border-color: rgba(255,255,255,.12) !important; }
html body .pb-tile:hover { background: #fff !important; }
html body .pb-tile:hover .pb-ui, html body .pb-tile:hover .pb-float, html body .pb-tile:hover .pb-msg, html body .pb-tile:hover .pb-road div, html body .pb-tile:hover .pb-signal, html body .pb-tile:hover .pb-kpis div, html body .pb-tile:hover .pb-next { background-color: #fff !important; opacity: 1 !important; }
html body .pb-tile:hover .pb-ui-bar { background-color: var(--slate-50) !important; }
html body .pb-tile:hover .pb-signal { background-color: var(--slate-50) !important; }
html body .pb-t2:hover .pb-msg { background-color: #F3EEFF !important; }
html body .pb-tile:hover .pb-ui, html body .pb-tile:hover .pb-float, html body .pb-tile:hover .pb-road div, html body .pb-tile:hover .pb-signal { border-color: rgba(7,16,51,.08) !important; }
html body .pb-t2:hover .pb-msg { border-color: rgb(220,232,255) !important; }
.ks-mega--offers .ks-mega-inner { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 0; align-items: start; }
.ks-mega--offers .ks-mega-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.ks-foot-res-grid { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
.ks-foot-rc--wide { grid-column: 1 / -1 !important; margin-top: 8px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.1); }
.ks-foot-rc--wide h6 { max-width: none; }
.ks-foot-rc--wide ul { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; column-gap: clamp(20px, 2.4vw, 36px) !important; row-gap: 10px !important; }
.ks-foot-rc--wide a { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
@media (max-width: 1200px) { .ks-foot-res-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } .ks-foot-rc--wide ul { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
@media (max-width: 760px) { .ks-foot-res-grid { grid-template-columns: 1fr 1fr !important; } .ks-foot-rc--wide ul { grid-template-columns: 1fr 1fr !important; } .ks-foot-rc--wide a { white-space: normal; } }
@media (max-width: 480px) { .ks-foot-res-grid, .ks-foot-rc--wide ul { grid-template-columns: 1fr !important; } }
.ks-mega--offers .ks-mega-side { grid-column: 1 / -1; margin: 18px 0 0 !important; padding: 20px 0 2px !important; border: 0 !important; border-top: 1px solid var(--border) !important; background: transparent !important; display: block !important; }
.ks-mega--offers .ks-mega-side h6 { margin: 0 0 10px 18px !important; font: var(--fw-semi) 13px/1.3 var(--font-sans) !important; color: var(--fg1) !important; letter-spacing: 0 !important; text-transform: none !important; }
.ks-mega--offers .ks-mega-side h6::after { content: "Engineering engagements around your LMS"; margin-left: 12px; font-weight: 400; color: var(--fg3); }
.ks-mega--offers .ks-mega-side > .ks-mega-link { display: inline-flex !important; vertical-align: top; width: calc(25% - 6px); gap: 16px !important; align-items: flex-start !important; padding: 14px 18px !important; margin: 0 !important; border-radius: var(--r-md) !important; background: transparent !important; border: 0 !important; box-sizing: border-box; }
.ks-mega--offers .ks-mega-side > .ks-mega-link:hover { background: var(--slate-50) !important; }
.ks-mega--offers .ks-mega-side .ks-icon-tile { width: 44px !important; height: 44px !important; flex: none; }
.ks-mega--offers .ks-mega-side .ks-icon-tile svg { width: 21px !important; height: 21px !important; color: var(--ks-blue); }
.ks-mega--offers .ks-mega-side .ks-mega-link > span:last-child { display: flex; flex-direction: column; min-width: 0; }
.ks-mega--offers .ks-mega-side .ks-mega-t { display: block; font: var(--fw-semi) 15px/1.3 var(--font-sans) !important; color: var(--fg1) !important; margin-bottom: 5px; letter-spacing: 0 !important; }
.ks-mega--offers .ks-mega-side .ks-mega-d { display: block; font: var(--fw-reg) 13px/1.5 var(--font-sans) !important; color: var(--fg3) !important; text-wrap: pretty; letter-spacing: 0 !important; }
@media (max-width: 1200px) { .ks-mega--offers .ks-mega-side > .ks-mega-link { width: calc(50% - 4px); } }
/* trace.css */
.kt-host > :not(.kt-orbit):not(.kt-drift):not(.kt-conv):not(.amb):not(.mo-hv):not(.kt-frame) { position: relative; z-index: 1; }
.kt-orbit, .kt-drift, .kt-conv, html body .kt-host > .kt-orbit, html body .kt-host > .kt-drift, html body .kt-host > .kt-conv { position: absolute !important; z-index: 0 !important; pointer-events: none; }
.kt-orbit svg, .kt-drift svg, .kt-conv svg { width: 100%; height: 100%; display: block; overflow: visible; }
.kt-base { fill: none; stroke: #0A2A6B; stroke-opacity: .07; stroke-width: 1.2; vector-effect: non-scaling-stroke; }
.kt-dark .kt-base { stroke: #BFD4FF; stroke-opacity: .07; }
.kt-run { fill: none; stroke-width: 1.6; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.kt-layer { transition: transform .9s cubic-bezier(.2,.7,.2,1); will-change: transform; }
.kt-orbit { top: 50%; right: -18vw; width: min(96vh, 980px); aspect-ratio: 1; transform: translateY(-50%);
  -webkit-mask: radial-gradient(closest-side, #000 62%, transparent 100%), linear-gradient(90deg, transparent 0%, #000 34%); -webkit-mask-composite: source-in; mask: radial-gradient(closest-side, #000 62%, transparent 100%) intersect, linear-gradient(90deg, transparent 0%, #000 34%); }
.kt-orbit .kt-spin { transform-origin: 500px 500px; transform-box: view-box; animation: ktTurn 140s linear infinite; }
.kt-orbit .kt-run { stroke-opacity: .55; }
.kt-orbit.kt-dark .kt-run { stroke-opacity: .7; }
.kt-loop { animation: ktLoop 18s linear infinite; }
@keyframes ktLoop { from { stroke-dashoffset: 0; } to { stroke-dashoffset: -1000; } }
@keyframes ktTurn { to { rotate: 360deg; } }
@media (max-width: 991px){ .kt-orbit { right: -40vw; width: 110vw; top: 18%; opacity: .7; } }
.kt-drift { width: min(78vw, 1100px); aspect-ratio: 1; }
.kt-drift svg g { transform-origin: 500px 500px; transform-box: view-box; }
.kt-drift .kt-run { stroke-width: 1.8; stroke-opacity: .5; transition: none; }
.kt-drift .kt-base { stroke-opacity: .05; }
.kt-tr { top: -34%; right: -26%; } .kt-bl { bottom: -38%; left: -28%; } .kt-tl { top: -30%; left: -30%; } .kt-br { bottom: -34%; right: -26%; }
@media (max-width: 991px){ .kt-drift { width: 130vw; opacity: .7; } }
.kt-frame { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 3 !important; pointer-events: none; overflow: visible; }
.kt-frame .kt-run { stroke-width: 2.2; opacity: 0; stroke-dashoffset: 0; }
.kt-go .kt-frame .kt-run { animation: ktFrame 1.9s cubic-bezier(.45,0,.2,1) 1 forwards; }
@keyframes ktFrame { 0% { opacity: 0; stroke-dashoffset: 0; } 12% { opacity: .95; } 78% { opacity: .9; } 100% { opacity: 0; stroke-dashoffset: -1000; } }
.kt-conv { top: 50%; left: 50%; width: min(120vh, 1200px); aspect-ratio: 1; transform: translate(-50%, -50%);
  -webkit-mask: radial-gradient(closest-side, #000 55%, transparent 100%); mask: radial-gradient(closest-side, #000 55%, transparent 100%); }
.kt-pulse { opacity: 0; animation: ktPulse 7.5s cubic-bezier(.45,0,.2,1) infinite; }
.kt-conv .kt-run { stroke-width: 1.7; }
@keyframes ktPulse { 0% { opacity: 0; stroke-dashoffset: 0; } 8% { opacity: .6; } 40% { opacity: .55; } 58% { opacity: 0; stroke-dashoffset: -1000; } 100% { opacity: 0; stroke-dashoffset: -1000; } }
.kt-conv.kt-dark .kt-pulse { animation-name: ktPulseD; }
@keyframes ktPulseD { 0% { opacity: 0; stroke-dashoffset: 0; } 8% { opacity: .8; } 40% { opacity: .7; } 58% { opacity: 0; stroke-dashoffset: -1000; } 100% { opacity: 0; stroke-dashoffset: -1000; } }
@media (prefers-reduced-motion: reduce){ .kt-orbit, .kt-drift, .kt-conv, .kt-frame { display: none; } }
.kt-host:has(> .kt-drift), .kt-host:has(> .kt-orbit), .kt-host:has(> .kt-conv) { overflow-x: clip; }
html { overflow-x: clip; }
body:not([data-page="home"]) :is(.kt-orbit, .kt-drift, .kt-conv, .kt-frame) { display: none !important; }
body[data-page="offer"] .of-cta > .kt-conv { display: block !important; }
.kt-conv .kt-hit { fill: none; stroke: transparent; stroke-width: 34; pointer-events: none; }
.kt-conv .kt-run { animation: none !important; opacity: 0; stroke-linecap: round; fill: none; }
.kt-conv .kt-run.kt-l1 { stroke-width: 1.1; --peak: .24; --L: 280; } .kt-conv .kt-run.kt-l2 { stroke-width: 1.7; --peak: .5; --L: 160; } .kt-conv .kt-run.kt-l3 { stroke-width: 2.4; --peak: .9; --L: 64; }
.kt-conv .kt-base { opacity: 1; }
section.cta, .kt-host:has(> .kt-conv) { overflow: clip !important; contain: paint; }
.kt-conv { overflow: hidden !important; }
.kt-conv .kt-flow polyline { fill: none; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.kt-conv .kt-flow { pointer-events: none; }