.vs-hero-grid{grid-template-columns:1fr;align-items:center;gap:40px;display:grid}@media (width>=1024px){.vs-hero-grid{grid-template-columns:1fr 420px;gap:64px}}.vs-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--color-title);margin-bottom:32px;font-size:12px;font-weight:600}.vs-h1{color:var(--color-title);letter-spacing:-.01em;font-size:clamp(40px,6vw,64px);font-weight:700;line-height:1.05}.vs-h1 em{color:var(--color-title);font-style:italic;font-weight:400}.vs-cta-primary{background-color:var(--bg-dark);color:var(--color-white);border:0;border-radius:100px;align-items:center;gap:10px;padding:16px 36px;font-size:16px;font-weight:500;line-height:1.2;text-decoration:none;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #2628311a,0 4px 12px -2px #2628312e,inset 0 1px #ffffff14}.vs-cta-primary:before{content:"";background:linear-gradient(100deg,#0000,#ffffff47 50%,#0000);width:60%;height:100%;transition:left .7s cubic-bezier(.16,1,.3,1);position:absolute;top:0;left:-120%;transform:skew(-18deg)}.vs-cta-primary:hover{color:var(--color-white);transform:translateY(-1px);box-shadow:0 1px 2px #2628311a,0 8px 20px -4px #26283147,inset 0 1px #ffffff1a}.vs-cta-primary:hover:before{left:130%}.vs-cta-primary .arrow{transition:transform .25s cubic-bezier(.16,1,.3,1)}.vs-cta-primary:hover .arrow{transform:translate(3px)}.vs-link-text{color:var(--color-text-light);align-items:center;gap:6px;padding:14px 12px;font-size:15px;text-decoration:none;transition:color .15s;display:inline-flex}.vs-link-text:hover{color:var(--color-title);text-underline-offset:4px;text-decoration:underline}.vs-stats{background:var(--bg-dark);color:var(--color-white);border-radius:28px;box-shadow:0 1px 2px #2628311a,0 16px 40px -10px #26283140}.vs-stats-head{letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid #ffffff14;grid-template-columns:1fr auto auto;align-items:center;column-gap:20px;padding:18px 28px;font-size:11px;font-weight:600;display:grid}.vs-stats-head .col-them,.vs-stats-head .col-us{text-align:right;min-width:80px}.vs-stats-head .col-them{color:#ffffff73}.vs-stats-head .col-us{color:var(--color-success-light)}.vs-stats-row{border-bottom:1px solid #ffffff0f;grid-template-columns:1fr auto auto;align-items:baseline;column-gap:20px;padding:14px 28px;display:grid}.vs-stats-row:last-child{border-bottom:none}.vs-stats-key{color:#ffffff8c;font-size:14px}.vs-stats-them{text-align:right;color:#ffffff73;font-variant-numeric:tabular-nums;min-width:80px;font-size:14px}.vs-stats-us{text-align:right;min-width:80px;color:var(--color-white);letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.vs-cell-no{color:#ffffff40;font-size:20px;line-height:1}.vs-cell-yes{color:var(--color-success-light);vertical-align:middle;display:inline-block}.vs-cell-locked{color:#ffffff80;vertical-align:middle;display:inline-block}.shot-keys-wrap{max-width:860px;margin-top:36px;overflow-x:auto}table.shot-keys{border-collapse:collapse;width:100%}.shot-keys thead th{letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-light);text-align:left;border-bottom:1px solid #2628312e;padding:12px 4px;font-size:11px;font-weight:600}.shot-keys tbody th{text-align:left;white-space:nowrap;vertical-align:middle;border-bottom:1px solid #26283114;padding:18px 16px 18px 4px;font-weight:500}.shot-keys tbody td{text-align:left;color:var(--color-title);border-bottom:1px solid #26283114;padding:18px 4px;font-size:16px;line-height:1.45}.shot-keys tbody tr:last-child>*{border-bottom:none}.shot-keys kbd{background:var(--color-white);color:var(--color-title);border:1px solid #2628312e;border-bottom-width:2px;border-radius:8px;padding:4px 10px;font-family:inherit;font-size:14px;font-weight:600;display:inline-block}.shot-keys-plus{color:var(--color-text-light);margin:0 6px;font-size:14px}.shot-keys-note{max-width:860px;color:var(--color-text-light);margin-top:18px;font-size:14px}@media (width<=640px){.shot-keys thead{display:none}.shot-keys tbody tr{border-bottom:1px solid #26283114;padding:14px 0;display:block}.shot-keys tbody tr:last-child{border-bottom:none}.shot-keys tbody th,.shot-keys tbody td{white-space:normal;border-bottom:none;padding:0;display:block}.shot-keys tbody td{margin-top:8px;font-size:15px}.shot-keys kbd{margin-bottom:4px}}table.vs-table-min{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-top:36px}.vs-table-min thead th{letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-light);text-align:center;border-bottom:1px solid #2628312e;padding:14px 4px;font-size:11px;font-weight:600}.vs-table-min thead th:first-child{text-align:left}.vs-table-min thead th:last-child{color:var(--color-success)}.vs-table-min tbody th{text-align:left;color:var(--color-title);border-bottom:1px solid #26283114;padding:26px 4px;font-size:17px;font-weight:500}.vs-table-min tbody td{text-align:center;border-bottom:1px solid #26283114;padding:26px 4px;font-size:17px}.vs-table-min tbody tr:last-child>*{border-bottom:none}.vs-table-min td.vs-them{color:var(--color-text-lighter)}.vs-table-min td.vs-us{color:var(--color-title);font-weight:600}.vs-table-min tr.is-price>*{border-bottom:none;padding-top:40px;padding-bottom:40px}.vs-table-min tr.is-price th{text-transform:uppercase;letter-spacing:.16em;color:var(--color-text-light);font-size:11px;font-weight:600}.vs-table-min tr.is-price td.vs-us{color:var(--color-success);letter-spacing:-.02em;font-size:36px;font-weight:700;line-height:1}.vs-min-yes{vertical-align:middle;display:inline-block}.vs-min-locked{color:var(--color-text-lightest);vertical-align:middle;display:inline-block}.vs-min-no{color:var(--color-text-lightest);font-size:18px;line-height:1}.vs-stats-row.is-price{background:#ffffff05;border-top:1px solid #ffffff1f;border-bottom:none;padding-top:18px;padding-bottom:20px}.vs-stats-row.is-price .vs-stats-key{letter-spacing:.16em;text-transform:uppercase;color:#ffffff73;font-size:11px;font-weight:600}.vs-stats-row.is-price .vs-stats-them{color:#ffffff73;font-size:16px}.vs-stats-row.is-price .vs-stats-us{color:var(--color-success-light);letter-spacing:-.02em;font-size:30px;font-weight:700;line-height:1}.vs-section{padding:clamp(56px,7vw,88px) 0}.vs-section-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text);margin-bottom:20px;font-size:12px;font-weight:600}.vs-section-h2{color:var(--color-title);letter-spacing:-.01em;margin-bottom:16px;font-size:clamp(28px,4vw,44px);font-weight:700;line-height:1.1}.vs-section-sub{color:var(--color-text);max-width:540px;margin-bottom:28px;font-size:16px;line-height:1.55}.vs-migration-grid{grid-template-columns:1fr;align-items:center;gap:40px;display:grid}@media (width>=1024px){.vs-migration-grid{grid-template-columns:1fr 1fr;gap:80px}}.vs-mig-mock{background:var(--color-white);border:1px solid #26283114;border-radius:20px;padding:24px;box-shadow:0 1px 2px #2628310f,0 12px 32px -8px #2628312e}.vs-mig-step{color:var(--color-text);border-bottom:1px solid #2628310f;align-items:center;gap:14px;padding:12px 0;font-size:14px;transition:color .4s;display:flex}.vs-mig-step:last-of-type{border-bottom:none}.vs-mig-num{width:28px;height:28px;color:var(--color-white);background:#26283126;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex;position:relative}.vs-mig-num:after{content:"";border:2px solid var(--color-title);opacity:0;border-radius:50%;position:absolute;inset:-4px;transform:scale(.6)}@keyframes vs-mig-step-cycle{0%{background:#26283126;transform:scale(1)}10%,25%{background:var(--bg-dark);transform:scale(1.08)}35%,to{background:var(--color-success-light);transform:scale(1)}}@keyframes vs-mig-pulse{0%,to{opacity:0;transform:scale(.6)}10%,25%{opacity:1;transform:scale(1.1)}35%,to{opacity:0;transform:scale(.6)}}@keyframes vs-mig-text{0%{color:var(--color-text-lighter)}10%,25%{color:var(--color-title);font-weight:600}35%,to{color:var(--color-text);font-weight:400}}.vs-mig-mock.is-playing .vs-mig-step:first-child .vs-mig-num,.vs-mig-mock.is-playing .vs-mig-step:nth-child(2) .vs-mig-num,.vs-mig-mock.is-playing .vs-mig-step:nth-child(3) .vs-mig-num{animation:6s ease-in-out infinite vs-mig-step-cycle}.vs-mig-mock.is-playing .vs-mig-step:first-child .vs-mig-num:after,.vs-mig-mock.is-playing .vs-mig-step:nth-child(2) .vs-mig-num:after,.vs-mig-mock.is-playing .vs-mig-step:nth-child(3) .vs-mig-num:after{animation:6s ease-in-out infinite vs-mig-pulse}.vs-mig-mock.is-playing .vs-mig-step:first-child,.vs-mig-mock.is-playing .vs-mig-step:nth-child(2),.vs-mig-mock.is-playing .vs-mig-step:nth-child(3){animation:6s ease-in-out infinite vs-mig-text}.vs-mig-mock.is-playing .vs-mig-step:first-child .vs-mig-num,.vs-mig-mock.is-playing .vs-mig-step:first-child .vs-mig-num:after,.vs-mig-mock.is-playing .vs-mig-step:first-child{animation-delay:0s}.vs-mig-mock.is-playing .vs-mig-step:nth-child(2) .vs-mig-num,.vs-mig-mock.is-playing .vs-mig-step:nth-child(2) .vs-mig-num:after,.vs-mig-mock.is-playing .vs-mig-step:nth-child(2){animation-delay:1.2s}.vs-mig-mock.is-playing .vs-mig-step:nth-child(3) .vs-mig-num,.vs-mig-mock.is-playing .vs-mig-step:nth-child(3) .vs-mig-num:after,.vs-mig-mock.is-playing .vs-mig-step:nth-child(3){animation-delay:2.4s}.vs-mig-bar{background:#26283114;border-radius:3px;height:6px;margin-top:16px;overflow:hidden}.vs-mig-bar>span{background:linear-gradient(90deg, var(--color-success-light), var(--color-success));border-radius:3px;width:0;height:100%;display:block}@keyframes vs-mig-bar-fill{0%{width:0}55%{width:100%}85%,to{width:100%}}.vs-mig-mock.is-playing .vs-mig-bar>span{animation:6s ease-in-out infinite vs-mig-bar-fill}@media (prefers-reduced-motion:reduce){.vs-mig-mock.is-playing .vs-mig-step .vs-mig-num,.vs-mig-mock.is-playing .vs-mig-step .vs-mig-num:after,.vs-mig-mock.is-playing .vs-mig-step,.vs-mig-mock.is-playing .vs-mig-bar>span{animation:none}.vs-mig-mock.is-playing .vs-mig-num{background:var(--color-success-light)}.vs-mig-mock.is-playing .vs-mig-bar>span{width:100%}}.vs-reasons-grid{grid-template-columns:1fr;gap:24px;margin-top:32px;display:grid}@media (width>=768px){.vs-reasons-grid{grid-template-columns:repeat(3,1fr);gap:32px}}.vs-reason{border-top:1px solid #26283126;padding-top:24px}.vs-reason-num{letter-spacing:.18em;color:var(--color-text-light);font-variant-numeric:tabular-nums;margin-bottom:12px;font-size:12px;font-weight:600}.vs-reason-title{color:var(--color-title);margin-bottom:10px;font-size:22px;font-weight:700;line-height:1.2}.vs-reason-desc{color:var(--color-text);font-size:15px;line-height:1.5}.vs-features-grid{grid-template-columns:1fr;gap:24px;margin-top:32px;display:grid}@media (width>=768px){.vs-features-grid{grid-template-columns:repeat(3,1fr);gap:24px}}.vs-feat{background:var(--color-white);border:1px solid #2628310f;border-radius:20px;padding:0;overflow:hidden;box-shadow:0 1px 2px #2628310f,0 12px 32px -8px #2628312e}.vs-feat-mock{height:160px;position:relative;overflow:hidden}.vs-feat-body{padding:22px 24px 26px}.vs-feat-title{color:var(--color-title);margin-bottom:8px;font-size:18px;font-weight:700}.vs-feat-desc{color:var(--color-text);font-size:14px;line-height:1.5}.vs-feat-mock-analytics{background:linear-gradient(180deg, var(--bg-panel), var(--bg-panel-shade));align-items:flex-end;gap:8px;padding:16px 20px;display:flex}.vs-feat-mock-analytics .bar{background:var(--bg-dark);opacity:.85;border-radius:2px;flex:1}.vs-feat-mock-domain{background:linear-gradient(180deg, var(--color-white), var(--bg-panel-shade));flex-direction:column;justify-content:center;gap:8px;padding:22px;display:flex}.vs-feat-mock-domain .row{font-family:var(--second-font-family);color:var(--color-text);align-items:center;gap:10px;font-size:12px;display:flex}.vs-feat-mock-domain .dot{background:#26283133;border-radius:50%;width:8px;height:8px}.vs-feat-mock-domain .row.is-ok .dot{background:var(--color-success-light)}.vs-feat-mock-domain .bar{background:#26283114;border-radius:2px;flex:1;height:6px}.vs-feat-mock-domain .row.is-ok .bar{background:var(--color-success-light);opacity:.5}.vs-feat-mock-api{background:var(--bg-terminal);font-family:var(--second-font-family);color:#ffffffa6;padding:18px 22px;font-size:11px;line-height:1.6}.vs-feat-mock-api .green{color:var(--color-success-light)}.vs-feat-mock-api .blue{color:var(--color-code-blue)}.vs-feat-mock-api .gray{color:#fff6}.vs-faq-list{margin-top:32px}.vs-faq-item{border-top:1px solid #2628311a}.vs-faq-item:last-of-type{border-bottom:1px solid #2628311a}.vs-faq-q{cursor:pointer;color:var(--color-title);justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-size:17px;font-weight:600;list-style:none;display:flex}.vs-faq-q::-webkit-details-marker{display:none}.vs-faq-q:after{content:"+";color:var(--color-text-light);flex-shrink:0;font-size:24px;font-weight:300;transition:transform .2s}.vs-faq-item[open] .vs-faq-q:after{content:"−"}.vs-faq-a{color:var(--color-text);max-width:760px;padding:0 0 22px;font-size:15px;line-height:1.55}.shot-downloads.is-left{justify-content:flex-start}.vs-table-min .flag{vertical-align:middle;border-radius:3px;width:24px;height:18px;display:inline-block;box-shadow:0 0 0 1px #2628311f}.vs-related{padding-top:0}.vs-related-h{letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-light);margin-bottom:14px;font-size:13px;font-weight:600}.vs-related-h+.vs-pills+.vs-related-h{margin-top:36px}.vs-pills{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.vs-pills a{background:var(--color-white);color:var(--color-title);border:1px solid #26283124;border-radius:999px;align-items:center;gap:6px;padding:9px 16px;font-size:15px;font-weight:500;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:inline-flex}.vs-pills a:hover{border-color:#26283166;box-shadow:0 4px 14px -6px #26283140}.vs-pill-vs{color:var(--color-text-light);font-size:12px;font-weight:600}.vs-hub-wrap{overflow-x:auto}.vs-hub-wrap table.vs-table-min{min-width:640px}.vs-hub-wrap .vs-table-min thead th:last-child{color:var(--color-text-light)}.vs-hub-wrap .vs-table-min tbody th a{color:inherit;text-underline-offset:3px;text-decoration:underline}.vs-hub-wrap .vs-table-min tr.is-us>*{color:var(--color-success);font-weight:600}
