.vls-sales{--vls-primary:#7c5cff;--vls-secondary:#b79cff;--vls-ink:#11121f;--vls-deep:#0d1028;--vls-soft:#f4f1ff;--vls-line:#e4def9;--vls-muted:#696a7e;color:var(--vls-ink);background:#fff;font-family:'Inter',system-ui,sans-serif;overflow:hidden}
.vls-sales *{box-sizing:border-box}.vls-sales h1,.vls-sales h2,.vls-sales h3,.vls-sales strong{font-family:'Plus Jakarta Sans','Inter',sans-serif}.vls-sales img{max-width:100%;display:block}
[data-vls-reveal],[data-vls-stagger]>*{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}[data-vls-reveal].is-visible,[data-vls-stagger]>.is-visible{opacity:1;transform:none}
.vls-kicker,.vls-label{display:inline-flex;align-items:center;gap:8px;font:850 .68rem/1 'Plus Jakarta Sans';letter-spacing:.14em;text-transform:uppercase;color:var(--vls-primary)}
.vls-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid transparent;font:850 .76rem/1 'Plus Jakarta Sans';transition:.2s}.vls-btn:hover{transform:translateY(-2px)}.vls-btn-primary{background:linear-gradient(135deg,var(--vls-primary),#9b6bff);color:#fff;box-shadow:0 14px 36px rgba(124,92,255,.24)}.vls-btn-outline{background:#fff;border-color:#d8d1f1;color:var(--vls-ink)}
.vls-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.vls-actions-center{justify-content:center}.vls-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.vls-tags span{padding:8px 10px;border-radius:999px;background:#fff;border:1px solid var(--vls-line);font-size:.56rem;font-weight:800;color:#5f6070}
.vls-hero{padding:76px 0 40px;background:radial-gradient(circle at top right,#efe8ff 0,#faf9ff 34%,#fff 75%)}.vls-hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:58px;align-items:center}.vls-copy h1{font-size:clamp(3rem,5.8vw,6rem);line-height:.92;letter-spacing:-.06em;margin:18px 0}.vls-copy p{font-size:1.04rem;line-height:1.75;color:var(--vls-muted);max-width:58ch}
.vls-stage{position:relative;min-height:640px}.vls-hero-card{position:absolute;border-radius:32px;background:linear-gradient(135deg,#15193e,#1d245c);box-shadow:0 30px 80px rgba(26,28,58,.18)}.vls-hero-product{right:0;top:0;width:56%;height:250px;display:flex;align-items:flex-end;padding:28px;background-image:radial-gradient(circle at top right,rgba(255,255,255,.16),transparent 38%),linear-gradient(135deg,#7c5cff,#121839)}.vls-product-copy small{display:block;color:#d8d2ff;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.54rem}.vls-product-copy strong{display:block;font-size:1.45rem;color:#fff;margin:10px 0 6px}.vls-product-copy span{font-size:.68rem;color:#d9d3ff}
.vls-dashboard{position:absolute;left:0;bottom:0;width:80%;margin:0;border-radius:28px;overflow:hidden;background:#fff;border:1px solid var(--vls-line);box-shadow:0 24px 70px rgba(17,18,31,.12)}.vls-browser-bar{height:42px;padding:0 13px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border-bottom:1px solid #ede9fd;font-size:.48rem;color:#7a7896}.vls-browser-bar>span{display:flex;gap:4px}.vls-browser-bar i{width:7px;height:7px;border-radius:50%;background:#d7cff4}.vls-browser-bar i:first-child{background:var(--vls-primary)}.vls-browser-bar strong{letter-spacing:.1em;color:#5f5c77}.vls-browser-bar small{color:#12704a;text-transform:uppercase}
.vls-dashboard-body{display:grid;grid-template-columns:160px 1fr;min-height:345px}.vls-dashboard-side{background:#f8f6ff;border-right:1px solid #eee9fb;padding:18px;display:grid;align-content:start;gap:8px}.vls-dashboard-side span{display:flex;align-items:center;height:40px;padding:0 12px;border-radius:14px;font-size:.62rem;font-weight:800;color:#5f6277}.vls-dashboard-side .is-active{background:#7c5cff;color:#fff}.vls-dashboard-main{padding:18px}.vls-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.vls-stats article,.vls-mini-card{background:#f8f6ff;border:1px solid #ece8fb;border-radius:18px;padding:16px}.vls-stats strong{display:block;font-size:1rem}.vls-stats span{display:block;margin-top:4px;font-size:.56rem;color:#706b87}.vls-cards-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.vls-mini-card em{display:block;font-style:normal;font-size:.5rem;text-transform:uppercase;letter-spacing:.08em;color:#63607a}.vls-mini-card strong{display:block;margin-top:8px;font-size:.86rem}.vls-products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.vls-product-box{height:112px;border-radius:18px;background:linear-gradient(180deg,#f9f8ff,#efebff);border:1px solid #ebe6fb;position:relative}.vls-product-box:before,.vls-product-box:after{content:'';position:absolute;left:12px;right:12px;border-radius:999px;background:#ded7fb}.vls-product-box:before{height:10px;bottom:26px}.vls-product-box:after{height:8px;bottom:12px;right:34%}
.vls-float{position:absolute;display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--vls-line);padding:12px 13px;border-radius:16px;box-shadow:0 14px 34px rgba(17,18,31,.08)}.vls-float i{width:36px;height:36px;border-radius:12px;background:#f2eeff;color:var(--vls-primary);display:grid;place-items:center}.vls-float strong{display:block;font-size:.65rem}.vls-float span{display:block;font-size:.5rem;color:#63607a;margin-top:2px}.vls-float-a{left:-2%;top:36%}.vls-float-b{right:0;bottom:14%}
.vls-trust{padding:0 0 50px}.vls-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.vls-trust article{background:#fcfbff;border:1px solid var(--vls-line);border-radius:22px;padding:20px;min-height:146px}.vls-trust strong{display:block;font-size:1rem;margin-bottom:8px}.vls-trust span{display:block;font-size:.64rem;color:var(--vls-muted);line-height:1.7}
.vls-section{padding:100px 0}.vls-story{background:#fff}.vls-showcase{background:#faf8ff}.vls-features{background:#121630;color:#fff}.vls-final{background:linear-gradient(135deg,#f3efff,#fcfbff);text-align:center}
.vls-split{display:grid;grid-template-columns:.82fr 1.18fr;gap:56px;align-items:center}.vls-split-reverse{grid-template-columns:1fr 1fr}.vls-section h2,.vls-head h2,.vls-final h2{font-size:clamp(2.2rem,4.4vw,4.6rem);line-height:.95;letter-spacing:-.06em;margin:14px 0 16px}.vls-section p,.vls-head p,.vls-final p{line-height:1.72;color:var(--vls-muted)}.vls-copy-block ul{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:8px}.vls-copy-block li{color:#5d5d72}.vls-copy-block li i{color:var(--vls-primary);margin-right:6px}
.vls-grid-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.vls-grid-cards article,.vls-feature-grid article{background:#fff;border:1px solid var(--vls-line);border-radius:22px;padding:22px}.vls-grid-cards i,.vls-feature-grid i{font-size:1.1rem;color:var(--vls-primary)}.vls-grid-cards h3,.vls-feature-grid h3{font-size:.9rem;margin:20px 0 8px}.vls-grid-cards p,.vls-feature-grid p{font-size:.62rem;line-height:1.7;color:#726d84}
.vls-preview-stack{position:relative;min-height:520px}.vls-preview-main,.vls-preview-side,.vls-preview-phone{position:absolute;border-radius:30px;overflow:hidden;border:1px solid var(--vls-line);box-shadow:0 24px 60px rgba(17,18,31,.1)}.vls-preview-main{left:0;top:0;width:80%;height:420px;background:linear-gradient(180deg,#fff,#f5f1ff)}.vls-preview-side{right:2%;top:42px;width:30%;height:260px;background:linear-gradient(180deg,#181d3f,#2c3472)}.vls-preview-phone{right:10%;bottom:0;width:24%;height:340px;background:linear-gradient(180deg,#fff,#f4efff)}.vls-preview-main:before,.vls-preview-side:before,.vls-preview-phone:before{content:'';position:absolute;left:22px;right:22px;top:22px;height:16px;border-radius:999px;background:#e7e1fb}.vls-preview-main:after{content:'';position:absolute;left:22px;right:22px;top:54px;bottom:22px;border-radius:24px;background:linear-gradient(180deg,#f1ecff,#ffffff)}.vls-preview-side:after{content:'';position:absolute;left:18px;right:18px;top:54px;bottom:18px;border-radius:18px;background:rgba(255,255,255,.1)}.vls-preview-phone:after{content:'';position:absolute;left:14px;right:14px;top:50px;bottom:14px;border-radius:18px;background:linear-gradient(180deg,#f0ebff,#ffffff)}
.vls-head{text-align:center;max-width:760px;margin:0 auto 40px}.vls-head p{color:#cbc7df}.vls-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.vls-feature-grid article{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1)}.vls-feature-grid p{color:#c5c1d9}
.vls-components{background:#fff}.vls-components .sv-planos,.vls-components .sv-faq{background:transparent}.vls-components .sv-label{color:var(--vls-primary)}.vls-components .sv-label:before{background:var(--vls-primary)}.vls-components .sv-plano{border-radius:24px;background:#fff}.vls-components .sv-plano--ancora{border-color:rgba(124,92,255,.35)}.vls-components .sv-plano__tag{background:var(--vls-primary);color:#fff}
.vls-final-inner{max-width:900px;margin:auto}.vls-final p{max-width:58ch;margin-inline:auto}
@media(max-width:1024px){.vls-hero-grid,.vls-split,.vls-split-reverse{grid-template-columns:1fr}.vls-stage{max-width:760px;margin:auto}.vls-trust-grid,.vls-feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.vls-copy h1{font-size:clamp(3rem,14vw,4.7rem)}.vls-actions{display:grid}.vls-btn{width:100%}.vls-stage{min-height:520px}.vls-hero-product{width:78%;height:230px}.vls-dashboard{width:84%}.vls-dashboard-body{grid-template-columns:1fr}.vls-dashboard-side{display:none}.vls-stats,.vls-cards-row,.vls-products-grid,.vls-trust-grid,.vls-grid-cards,.vls-feature-grid{grid-template-columns:1fr}.vls-float-a{display:none}.vls-preview-stack{min-height:380px}.vls-preview-main{width:78%;height:280px}.vls-preview-side{display:none}.vls-preview-phone{width:34%;height:240px}}
@media(prefers-reduced-motion:reduce){[data-vls-reveal],[data-vls-stagger]>*{opacity:1;transform:none;transition:none}}

/* -------------------------------------------------------------------------
   Átomos do núcleo em superfície clara
   -------------------------------------------------------------------------
   Planos, dúvidas e captação vêm de core.css. Sobre papel eles precisam das
   quatro correções de sempre: respiro entre as seções, o botão de vidro que
   some (tinta #f0f0f0 sobre branco), o acento que só brilha no escuro e o
   sublinhado dos links apagado pelo reset de link da vertical.
   ------------------------------------------------------------------------- */
.vls-componente{padding:clamp(74px,8vw,124px) 0}
.vls-componente + .vls-componente{padding-top:0}
.vls-componente .vls-label{margin-bottom:18px}
.vls-componente h2{font-size:clamp(1.9rem,3.2vw,3.3rem);line-height:1.08;letter-spacing:-.03em;margin:0 0 18px;color:var(--vls-ink,#11121f)}
.vls-componente-apoio{max-width:60ch;margin:0 0 clamp(34px,4vw,54px);color:var(--vls-muted,#696a7e);line-height:1.78}
.vls-componente .sv-planos,.vls-componente .sv-duvidas,.vls-componente .sv-lead{padding:0;background:transparent}
.vls-componente .sv-planos__nota{margin-top:clamp(26px,3vw,38px)}
.vls-components .sc-btn-glass{background:#fff;color:#11121f;border:1px solid rgba(17,18,31,.16)}
.vls-components .sc-btn-glass:hover{background:#f7f5ff;color:#11121f;border-color:rgba(17,18,31,.3)}
.vls-components .sv-plano{border-radius:22px;background:#fff;box-shadow:0 18px 44px -26px rgba(17,18,31,.22)}
.vls-components .sv-plano--ancora{box-shadow:0 30px 70px -34px rgba(17,18,31,.3)}
.vls-components .vatse-commercial-field input{background:#fff;border-color:rgba(17,18,31,.16);color:#11121f}
.vls-components{--sv-accent-ink:#5b3fd6}
.vls-components .sv-planos__nota a,
.vls-components .sv-duvidas__aside a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}

/* Com width:100% e SEM height:auto, o atributo height do HTML vira altura
   fixa e a captura estoura a seção. */
.vls-dashboard img,
.vls-preview-card img,
.vls-panel img{height:auto}

/* As molduras deixam de ser degradê e passam a emoldurar a captura. */
.vls-preview-main,.vls-preview-side,.vls-preview-phone{margin:0;overflow:hidden;border:1px solid var(--vls-line);box-shadow:0 24px 60px -32px rgba(17,18,31,.35)}
.vls-preview-main{border-radius:24px;background:#fff}
.vls-preview-side{border-radius:20px;background:#fff}
.vls-preview-phone{border-radius:20px;background:#fff}
.vls-preview-main img,.vls-preview-side img,.vls-preview-phone img{width:100%;height:100%;object-fit:cover;object-position:top left}

/* -------------------------------------------------------------------------
   Acento como TINTA
   -------------------------------------------------------------------------
   #7c5cff é a cor da marca e funciona cheia, num botão ou num degradê. Como
   texto sobre branco ela rende 3.3:1, e com texto branco em cima rende o
   mesmo: reprova nos dois papéis. O roxo continua o mesmo; o que muda é o
   tom usado quando ele vira letra.
   ------------------------------------------------------------------------- */
/* A tinta escura vale só onde o fundo é claro. Nas seções escuras o roxo
   claro é que tem contraste, e escurecê-lo lá apagaria o texto. */
[data-superficie="clara"] .vls-kicker,
[data-superficie="clara"] .vls-label,
[data-superficie="clara"] .vls-float i,
[data-superficie="clara"] .vls-copy-block li i,
[data-superficie="clara"] .vls-grid-cards i,
[data-superficie="clara"] .vls-feature-grid i,
.vls-components .sv-label{color:#5b3fd6}
[data-superficie="clara"] .vls-sales p,
[data-superficie="clara"] p{color:#5f5c73}
.vls-btn-primary{background:linear-gradient(135deg,#5b3fd6,#7a5cf0)}

/* Preenchimentos que carregam texto branco precisam do roxo escuro: no tom
   claro eles rendem 3.3:1. E na seção escura o roxo da marca vira letra sobre
   quase-preto, onde ele também não passa: lá entra o tom claro da paleta. */
.vls-dashboard-side .is-active{background:#5b3fd6}
.vls-components .sv-plano__tag{background:#5b3fd6}
.vls-features .vls-kicker,
.vls-features .vls-label,
.vls-features i{color:#b79cff}

/* -------------------------------------------------------------------------
   Vitrine interativa (módulo próprio da loja)
   -------------------------------------------------------------------------
   Filtro por categoria + sacola que conta. É a seção que dá identidade a esta
   página: nenhuma outra vertical tem uma vitrine navegável.
   ------------------------------------------------------------------------- */
.vls-vitrine-box{margin-top:clamp(32px,4vw,52px);border:1px solid var(--vls-line);border-radius:26px;background:#fff;box-shadow:0 30px 70px -40px rgba(17,18,31,.34);overflow:hidden}
.vls-vitrine-bar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--vls-line);background:linear-gradient(180deg,#faf8ff,#fff)}
.vls-vitrine-abas{display:flex;flex-wrap:wrap;gap:8px}
.vls-vitrine-abas button{border:1px solid var(--vls-line);background:#fff;color:#4a4860;border-radius:999px;padding:9px 18px;font:700 .82rem/1 'Plus Jakarta Sans','Inter',sans-serif;cursor:pointer;transition:.2s}
.vls-vitrine-abas button:hover{border-color:#c7bdf5;color:#2c2745}
.vls-vitrine-abas button[aria-selected="true"]{background:linear-gradient(135deg,#5b3fd6,#7a5cf0);border-color:transparent;color:#fff}
.vls-vitrine-abas button:focus-visible{outline:2px solid #5b3fd6;outline-offset:2px}
.vls-sacola{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;background:#f2eeff;color:#5b3fd6;font:700 .82rem/1 'Plus Jakarta Sans','Inter',sans-serif}
.vls-sacola b{font-size:.95rem;min-width:1ch;text-align:center}
.vls-sacola.is-bump{animation:vls-bump .32s ease}
@keyframes vls-bump{0%{transform:scale(1)}40%{transform:scale(1.14)}100%{transform:scale(1)}}
.vls-vitrine-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;padding:22px}
.vls-vitrine-card{border:1px solid var(--vls-line);border-radius:18px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:transform .22s ease,box-shadow .22s ease}
.vls-vitrine-card:hover{transform:translateY(-4px);box-shadow:0 20px 46px -30px rgba(17,18,31,.35)}
.vls-vitrine-card[hidden]{display:none}
.vls-vitrine-foto{aspect-ratio:1/1;background:#f5f2fc;overflow:hidden}
.vls-vitrine-foto img{width:100%;height:100%;object-fit:cover}
.vls-vitrine-info{padding:14px 15px 16px;display:flex;flex-direction:column;gap:12px;flex:1}
.vls-vitrine-info h3{font-size:.95rem;line-height:1.3;margin:0;color:#1a1830}
.vls-vitrine-baixo{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px}
.vls-vitrine-baixo strong{font-size:1.02rem;color:#11121f}
.vls-add{width:38px;height:38px;border:0;border-radius:12px;background:#5b3fd6;color:#fff;display:grid;place-items:center;cursor:pointer;transition:.2s;flex:none}
.vls-add:hover{background:#4a30bd}
.vls-add:focus-visible{outline:2px solid #5b3fd6;outline-offset:2px}
.vls-add.is-feito{background:#12704a}
.vls-vitrine-nota{padding:0 22px 24px;color:var(--vls-muted,#5f5c73)}
@media(max-width:560px){.vls-vitrine-grid{grid-template-columns:repeat(2,1fr);gap:12px;padding:16px}.vls-sacola-rotulo{display:none}}
