/* VIBE AI — página inicial (26/10/2026).
   Só a montagem desta página: cores, fontes, espaços e raios vêm do design system (assets/ds/vibe-ds.css),
   sempre por var(--...). O lint do design system confere este arquivo (npm run lint em Design System/design-system). */

html{scroll-behavior:smooth;scroll-padding-top:var(--scroll-offset);-webkit-text-size-adjust:100%}
body{font-size:var(--fs-body);line-height:var(--lh-body);text-rendering:optimizeLegibility}
img,video,svg{display:block;max-width:100%}
p,h1,h2,h3{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
[hidden]{display:none!important}

.pagina{width:100%;max-width:calc(var(--content-max) + var(--space-5) * 2);margin:0 auto;padding:0 var(--gutter-mobile)}
@media (min-width:640px){.pagina{padding:0 var(--space-5)}}
.secao{padding:var(--space-section-mobile) 0;background:var(--role-surface);color:var(--role-text)}
@media (min-width:640px){.secao{padding:var(--space-section) 0}}
.secao--suave{background:var(--surface-soft)}
.secao--onda{background:var(--gradient-waves),var(--surface-page)}
.secao--gradiente{background:var(--gradient-section-soft)}
.secao--escura{background:var(--gradient-dark)}
.secao .vb-heading{margin-bottom:var(--space-7)}
.vb-heading--left{max-width:var(--heading-max-center)}

.acoes{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}
.acoes--centro{justify-content:center;margin-top:var(--space-6)}
.selos{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--role-text-2)}
.selos li{display:inline-flex;align-items:center;gap:var(--space-1-5)}
.selos .vb-icon{width:var(--icon-sm);height:var(--icon-sm);color:var(--vb-green-500)}
.selos--coluna{flex-direction:column;gap:var(--space-2-5)}
.nota{margin-top:var(--space-5);max-width:var(--heading-max-center);font-size:var(--fs-caption);line-height:var(--lh-caption-lg);color:var(--role-text-2)}
.nota--centro{margin-left:auto;margin-right:auto;text-align:center}
.tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}

/* moldura: o jeito do sistema de mostrar foto e vídeo da VIBE (raio grande, sombra azul, borda fina) */
.moldura{position:relative;overflow:hidden;border-radius:var(--radius-xl);background:var(--surface-dark);box-shadow:var(--shadow-lg);border:var(--border-thin) solid var(--role-border-subtle)}
.moldura__midia{width:100%;height:100%;object-fit:cover}
.moldura--video{aspect-ratio:16/9;max-width:var(--page-media);margin:0 auto}
/* até 899 px o vídeo de 1 minuto é o de celular, em pé (720×1280): a moldura acompanha (mesma quebra do home.js) */
@media (max-width:899px){.moldura--video{aspect-ratio:9/16;width:min(100%,calc(var(--video-retrato-h) * 9 / 16))}}
.moldura--foto{aspect-ratio:4/3}
.moldura--retrato{aspect-ratio:4/5}
.moldura--print{display:block;background:var(--surface-card);text-decoration:none}
.moldura--print .moldura__midia{height:auto;object-fit:contain}
.moldura__lupa{position:absolute;right:var(--space-3);bottom:var(--space-3);display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-pill);background:var(--surface-glass);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass));color:var(--text-primary);font-size:var(--fs-caption);font-weight:var(--fw-bold)}
.moldura--print:hover .moldura__lupa{box-shadow:var(--shadow-md)}

/* 1. Hero */
.hero{position:relative;overflow:hidden;padding:var(--hero-top) 0 var(--space-section-mobile);background:var(--gradient-waves),var(--surface-page)}
.hero__grade{display:grid;gap:var(--space-7);align-items:center}
/* itens de grade podem encolher abaixo do conteúdo (senão um texto sem quebra alarga a coluna no celular) */
.hero__grade > *,.roi > *,.resultados > *,.final__grade > *,.ramo > *{min-width:0}
.vb-heading .vb-badge--overline{max-width:100%;white-space:normal;height:auto;min-height:var(--badge-h);padding-top:var(--space-1-5);padding-bottom:var(--space-1-5);line-height:var(--lh-caption)}
.hero__texto{gap:var(--space-5)}
.hero__cena{position:relative;padding:0 var(--space-2) var(--space-6)}
.moldura--hero{margin:0 auto}
.moldura--hero .vb-carousel{--carousel-ratio:4/5}
/* na abertura, os pontos do carrossel ficam em cima, à direita: embaixo ficam os cartões */
.moldura--hero .vb-carousel__controles{left:auto;right:var(--space-4);top:var(--space-4);bottom:auto;transform:none}
.moldura__video{position:absolute;inset:0;opacity:0;transition:opacity var(--dur-slow) var(--ease-out)}
.moldura__video.is-on{opacity:1}
.hero__card{position:absolute;width:var(--p-card-flutuante)}
.hero__card--1{top:var(--space-5);left:0}
.hero__card--2{top:42%;right:0}
.hero__card--3{bottom:0;left:var(--space-6)}
@media (min-width:640px) and (max-width:1023px){.moldura--hero .vb-carousel{--carousel-ratio:16/11}}
@media (min-width:1024px){
  .hero{padding:var(--hero-top-lg) 0 var(--space-section)}
  .hero__grade{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:var(--space-8)}
  .hero__card--1{left:calc(var(--space-7) * -1)}
  .hero__card--2{right:calc(var(--space-5) * -1)}
}
@media (max-width:639px){
  .acoes .vb-btn{width:100%;white-space:normal;height:auto;min-height:var(--control-lg);padding-top:var(--space-2);padding-bottom:var(--space-2);line-height:var(--lh-body-sm)}
  .hero__card{transform:scale(0.92);transform-origin:left top}
  .hero__card--2{transform-origin:right top}
}

/* 2. Vídeo de 1 minuto */
.vsl__tela{position:relative}
.vsl__botoes{position:absolute;left:var(--space-4);bottom:var(--space-4);display:flex;gap:var(--space-2)}
/* no vídeo em pé, as legendas ficam embaixo: o botão de som sobe para o canto de cima */
@media (max-width:899px){.vsl__botoes{left:auto;bottom:auto;right:var(--space-3);top:var(--space-3)}}
.vsl.is-som .vsl__botoes{display:none}
.vsl .nota{margin-left:auto;margin-right:auto;text-align:center}

/* 3. Vazamento */
.sintomas{display:grid;gap:var(--space-3-5)}
@media (min-width:760px){.sintomas{grid-template-columns:1fr 1fr}}
.sintomas .vb-feature__titulo{font-weight:var(--fw-semibold)}
.fecho{margin-top:var(--space-7);max-width:var(--heading-max-center);font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-extra);letter-spacing:var(--ls-tight);text-wrap:balance}

/* 4. Estrutura: lista numerada com ícones do sistema */
.estrutura{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4)}
.estrutura li{flex:1 1 100%;display:grid;justify-items:center;align-content:start;gap:var(--space-3);padding:var(--space-6) var(--space-5);text-align:center;border-radius:var(--radius-lg);background:var(--surface-card);border:var(--border-thin) solid var(--border-subtle);box-shadow:var(--shadow-sm);transition:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base)}
.estrutura li:hover{transform:translateY(var(--lift-2));box-shadow:var(--shadow-md)}
.estrutura__n{font-size:var(--fs-body-sm);font-weight:var(--fw-extra);letter-spacing:var(--ls-overline);background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.estrutura h3{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);font-weight:var(--fw-extra)}
.estrutura p{max-width:var(--portrait);color:var(--role-text-2)}
@media (min-width:640px){.estrutura li{flex:0 1 calc((100% - var(--space-4)) / 2)}}
@media (min-width:1024px){.estrutura li{flex:0 1 calc((100% - var(--space-4) * 2) / 3)}.estrutura p{max-width:none}}
.provas{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);margin-top:var(--space-6)}

/* 4b. Central: o ecossistema, com a VIBE no meio e as peças em órbita (o mesmo desenho do padrão CTA do design system) */
.central{display:grid;gap:var(--space-7);align-items:center}
.central > *{min-width:0}
.central__texto{display:grid;gap:var(--space-6)}
.central__texto .vb-heading{margin-bottom:0}
.central__lista{display:grid;gap:var(--space-4)}
.central__lista .vb-feature__titulo{font-weight:var(--fw-bold)}
.central__integra{display:grid;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface-card);border:var(--border-thin) solid var(--border-subtle);box-shadow:var(--shadow-sm);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--role-text-2)}
.central__integra-titulo{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);font-weight:var(--fw-extra);color:var(--role-text)}
.central__orbita{--raio:var(--p-orbita-raio);position:relative;height:calc(var(--raio) * 2 + var(--p-orbita-folga) * 1.5);display:flex;align-items:center;justify-content:center}
.central__anel{position:absolute;width:calc(var(--raio) * 2);height:calc(var(--raio) * 2);border-radius:50%;border:var(--border-strong) dashed var(--vb-blue-200)}
.central__anel--dentro{width:calc(var(--raio) * 1.2);height:calc(var(--raio) * 1.2);border-style:solid;border-color:var(--vb-blue-100);background:var(--surface-card)}
.central__nucleo{position:relative;display:grid;place-items:center;width:var(--p-nucleo);height:var(--p-nucleo);border-radius:50%;background:var(--surface-card);border:var(--border-strong) solid var(--vb-blue-100);box-shadow:var(--shadow-orb)}
.central__nucleo img{width:70%;height:auto}
.central__no{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(calc(var(--angulo) - 90deg)) translateX(var(--raio)) rotate(calc(90deg - var(--angulo)));display:flex;flex-direction:column;align-items:center;gap:var(--space-1-5)}
.central__no .vb-tile{background:var(--surface-card);box-shadow:var(--shadow-md)}
.central__no > span:last-child{padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-pill);background:var(--surface-card);box-shadow:var(--shadow-sm);font-size:var(--fs-caption);font-weight:var(--fw-bold);white-space:nowrap}
@media (min-width:640px){.central__orbita{--raio:var(--p-orbita-raio-lg)}}
@media (min-width:1024px){.central{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-8)}.central__orbita{--raio:calc(var(--p-orbita-raio-lg) * 1.2)}}

/* 5. Para quem */
.abas{display:flex;justify-content:center;margin-bottom:var(--space-6)}
html:not(.js) .abas{display:none}
.ramo{display:grid;gap:var(--space-6);padding:var(--space-4);border-radius:var(--radius-xl);background:var(--surface-card);border:var(--border-thin) solid var(--border-subtle);box-shadow:var(--shadow-md)}
html:not(.js) .ramo + .ramo{margin-top:var(--space-5)}
.ramo__foto{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/3}
.ramo__foto img{width:100%;height:100%;object-fit:cover}
.ramo__card{position:absolute;left:var(--space-3);right:var(--space-3);bottom:var(--space-3)}
.ramo__texto{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);padding:0 var(--space-2) var(--space-2)}
.ramo__titulo{font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-extra);letter-spacing:var(--ls-tight)}
.js .ramo__titulo{position:absolute;width:var(--border-thin);height:var(--border-thin);overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ramo__rotulo{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-overline);text-transform:uppercase;color:var(--role-text-2)}
.ramo__rotulo::before{content:"";width:var(--dot-lg);height:var(--dot-lg);border-radius:50%}
.ramo__rotulo--hoje::before{background:var(--vb-red-500)}
.ramo__rotulo--vibe{margin-top:var(--space-2);color:var(--vb-teal-700)}
.ramo__rotulo--vibe::before{background:var(--gradient-primary)}
.ramo__dor{color:var(--role-text-2);font-size:var(--fs-body);line-height:var(--lh-body)}
.ramo__cena{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);font-weight:var(--fw-medium)}
.ramo .tags{margin:var(--space-2) 0 var(--space-3)}
@media (min-width:860px){
  .ramo{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;padding:var(--space-5)}
  .ramo__foto{aspect-ratio:4/5}
  .ramo__card{right:auto;width:var(--portrait)}
  .ramo__texto{padding:var(--space-5) var(--space-6)}
}
@media (max-width:639px){.ramo .vb-btn{width:100%;white-space:normal;height:auto;min-height:var(--control-md);padding-top:var(--space-2);padding-bottom:var(--space-2);line-height:var(--lh-body-sm)}}

/* 6. Retorno */
.roi{display:grid;gap:var(--space-7);align-items:start}
.roi .vb-heading{margin-bottom:var(--space-5)}
.formula{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}
.formula b{font-size:var(--fs-h4);font-weight:var(--fw-semibold);color:var(--role-text-2)}
.roi__foto{margin-top:var(--space-6);aspect-ratio:16/11}
.roi__card{position:absolute;left:var(--space-4);bottom:var(--space-4);width:var(--portrait)}
.calc{padding:var(--space-6);border-radius:var(--radius-lg);background:var(--surface-card);border:var(--border-thin) solid var(--border-subtle);box-shadow:var(--shadow-lg)}
.calc__titulo{font-size:var(--fs-body-lg);font-weight:var(--fw-extra);margin-bottom:var(--space-4-5)}
.calc__campos{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3-5)}
.calc__largo{grid-column:1 / -1}
.calc__res{display:grid;gap:var(--space-3-5);margin:var(--space-5) 0 var(--space-3-5);padding-top:var(--space-5);border-top:var(--border-thin) solid var(--border-subtle)}
.calc__res p{display:grid;gap:var(--space-0-5)}
.calc__res strong{font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-extra);letter-spacing:var(--ls-tight)}
.calc__res span{color:var(--role-text-2);font-size:var(--fs-body-sm)}
.calc__cenario{display:flex!important;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);padding:var(--space-3-5) var(--space-4);border-radius:var(--radius-control);background:var(--surface-soft)}
.calc__cenario strong{font-size:var(--fs-h4)}
.calc__nota{margin-bottom:var(--space-5);font-size:var(--fs-caption);color:var(--role-text-2)}
@media (min-width:1024px){.roi{grid-template-columns:minmax(0,1fr) minmax(0,0.9fr);gap:var(--space-8)}}
@media (max-width:639px){.calc{padding:var(--space-5)}.roi__card{width:auto;right:var(--space-4)}.calc .vb-btn{white-space:normal;height:auto;min-height:var(--control-lg);padding-top:var(--space-2);padding-bottom:var(--space-2);line-height:var(--lh-body-sm)}}

/* 7. Resultados (faixa escura) */
.resultados{display:grid;gap:var(--space-7);align-items:center}
.resultados .vb-heading{margin-bottom:var(--space-5)}
.resultados__cases{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.resultados__painel{display:grid;gap:var(--space-4)}
.cliente{display:grid;gap:var(--space-2-5)}
.cliente__nome{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2-5);font-size:var(--fs-body);font-weight:var(--fw-extra)}
.cliente__nome span{font-size:var(--fs-caption);font-weight:var(--fw-semibold);color:var(--role-text-2)}
.numeros{display:grid;gap:var(--space-2-5)}
.numeros li{display:grid;align-content:start;gap:var(--space-1-5);padding:var(--space-4-5);border-radius:var(--radius-md);background:var(--role-glass);border:var(--border-thin) solid var(--role-glass-border)}
.numeros strong,.estimativa strong{font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-extra);letter-spacing:var(--ls-tight)}
.estimativa{display:grid;gap:var(--space-1);padding:var(--space-4-5);border-radius:var(--radius-md);border:var(--border-thin) dashed var(--role-glass-border)}
.estimativa span{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--role-text-3)}
@media (min-width:640px){.numeros{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:639px){.numeros li{grid-template-columns:auto 1fr;align-items:baseline;column-gap:var(--space-3)}.numeros small{grid-column:2}}
.numeros span{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--role-text-3)}
.numeros small{font-size:var(--fs-caption);color:var(--role-text-2)}
@media (min-width:1024px){.resultados{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:var(--space-8)}}

/* 8. Como trabalhamos */
.etapas{position:relative;max-width:var(--page-media);margin:0 auto}
.etapas__lista{display:grid;gap:var(--space-5);padding-bottom:var(--space-6)}
.pilha{position:sticky;top:calc(var(--scroll-offset) + var(--i) * var(--space-3-5));display:grid;grid-template-columns:auto 1fr;align-items:start;gap:var(--space-2) var(--space-5);min-height:var(--p-pilha);padding:var(--space-6);border-radius:var(--radius-xl);background:var(--surface-card);border:var(--border-thin) solid var(--border-subtle);box-shadow:var(--shadow-lg);transition:border-color var(--dur-base)}
.pilha .vb-step__n{grid-column:1 / -1;font-size:var(--fs-h2);line-height:1;font-weight:var(--fw-extra);background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.pilha .vb-step__halo{justify-self:start}
.pilha .vb-step__caixa,.pilha.is-active .vb-step__caixa{padding:0;border:0;background:transparent;box-shadow:none}
.pilha .vb-step__titulo{font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-extra)}
.pilha .vb-step__desc{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);margin-top:var(--space-2)}
.pilha .vb-step__exemplo{margin-top:var(--space-4)}
.pilha.is-active{border-color:var(--border-brand)}
@media (max-width:639px){.pilha{grid-template-columns:1fr;padding:var(--space-5);min-height:var(--p-pilha-sm)}.pilha .vb-step__desc{font-size:var(--fs-body);line-height:var(--lh-body)}}

/* 8b. Planos (PricingCard do design system, sem preço: o valor sai no diagnóstico) */
.planos{display:grid;gap:var(--space-5);align-items:start}
.planos .vb-price__nome{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);font-weight:var(--fw-extra)}
/* o selo do plano em destaque fica na borda de cima, para não apertar o nome */
.planos .vb-price--featured .vb-badge--popular{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);white-space:nowrap;box-shadow:var(--shadow-glow-sm)}
@media (min-width:1024px){.planos{grid-template-columns:repeat(3,minmax(0,1fr));padding-top:var(--space-3)}}
@media (max-width:1023px){.planos .vb-price--featured{transform:none}}

/* 9. Quem está por trás */
.pessoa{display:grid;justify-items:center;gap:var(--space-5);max-width:var(--heading-max-center);margin:0 auto;padding:var(--space-6) var(--space-5);text-align:center;border-radius:var(--radius-xl);background:var(--surface-card);border:var(--border-thin) solid var(--border-subtle);box-shadow:var(--shadow-md)}
.pessoa .moldura{width:100%;max-width:var(--portrait);box-shadow:var(--shadow-md)}
.pessoa__texto{display:grid;gap:var(--space-2-5);justify-items:center}
.pessoa__nome{font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-extra);letter-spacing:var(--ls-tight)}
.pessoa__cargo{font-weight:var(--fw-bold);color:var(--vb-teal-700)}
.pessoa__texto p:not(.pessoa__cargo){max-width:var(--heading-max-left);font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);color:var(--role-text-2)}

/* 10. Horário (faixa escura com a noite da abertura, estrelas e circuitos) */
.horario{position:relative;overflow:hidden;isolation:isolate}
.horario__fundo{position:absolute;inset:0;z-index:-1;background:var(--gradient-dark-veil),url("../img/estrelas.svg") center/var(--page-media) repeat,url("../img/abertura-noite.webp") center/cover no-repeat}
.horario__fundo::after{content:"";position:absolute;inset:0;background:url("../img/circuitos.svg") right center/var(--page-media) no-repeat;opacity:0.5}
.relogio{display:grid;gap:var(--space-4);max-width:var(--heading-max-center);margin:0 auto}
.relogio__linha{display:grid;gap:var(--space-2);align-items:center}
.relogio__nome{font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--role-text-2)}
.relogio__linha--vibe .relogio__nome{color:var(--role-text)}
.relogio__barra{position:relative;display:block;height:var(--space-3-5);border-radius:var(--radius-pill);background:var(--vb-white-08)}
.relogio__barra i{position:absolute;top:0;bottom:0;left:calc(var(--de) / 24 * 100%);width:calc((var(--ate) - var(--de)) / 24 * 100%);border-radius:var(--radius-pill);background:var(--vb-white-28)}
.relogio__linha--vibe i{background:var(--gradient-primary);box-shadow:var(--shadow-glow)}
.relogio__horas{display:flex;justify-content:space-between;font-size:var(--fs-caption);color:var(--role-text-2);font-variant-numeric:tabular-nums}
@media (min-width:640px){.relogio__linha{grid-template-columns:var(--p-cc-nav) 1fr;gap:var(--space-4-5)}.relogio__horas{margin-left:calc(var(--p-cc-nav) + var(--space-4-5))}}

/* 10b. Dúvidas (Accordion do design system) */
.duvidas{display:grid;gap:var(--space-7);align-items:start}
.duvidas > *{min-width:0}
.duvidas .vb-heading{margin-bottom:0}
@media (min-width:1024px){.duvidas{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:var(--space-8)}.duvidas .vb-heading{position:sticky;top:calc(var(--scroll-offset) + var(--space-5))}}

/* 11. Fechamento e formulário */
.final__grade{display:grid;gap:var(--space-7);align-items:start}
.final .vb-heading{margin-bottom:var(--space-5)}
.final__foto{margin-top:var(--space-2)}
.final__card{position:absolute;left:var(--space-4);bottom:var(--space-4);width:var(--portrait)}
.form{display:grid;gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--surface-card);border:var(--border-thin) solid var(--border-subtle);box-shadow:var(--shadow-lg)}
.form__titulo{font-size:var(--fs-h4);line-height:var(--lh-h4);font-weight:var(--fw-extra)}
.form__segmento{margin:0;padding:0;border:0;min-width:0}
.form__segmento legend{padding:0;margin-bottom:var(--space-1-5)}
.form__nota{font-size:var(--fs-caption);color:var(--role-text-2);text-align:center}
.form__nota a{color:inherit;text-decoration:underline}
.form__passos{display:flex;gap:var(--space-2);margin-top:calc(var(--space-2) * -1)}
.form__passos li{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-1);border-radius:var(--radius-pill);background:var(--surface-soft);font-size:var(--fs-caption);font-weight:var(--fw-semibold);color:var(--role-text-2)}
.form__passos b{display:inline-grid;place-items:center;width:var(--check-bubble);height:var(--check-bubble);border-radius:50%;background:var(--vb-white);font-size:var(--fs-micro);color:var(--role-text-2)}
.form__passos .is-atual{color:var(--role-overline-text)}
.form__passos .is-atual b{background:var(--gradient-primary);color:var(--vb-white)}
.form__dupla{display:grid;gap:var(--space-4)}
@media (min-width:640px){.form__dupla{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media (min-width:1024px){.final__grade{grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr);grid-template-areas:"texto form" "foto form";column-gap:var(--space-8);row-gap:0}.final__texto{grid-area:texto}.form{grid-area:form;position:sticky;top:var(--scroll-offset)}.final__foto{grid-area:foto}}
@media (max-width:639px){.form{padding:var(--space-5)}.final__card{width:auto;right:var(--space-4)}}

/* Rodapé */
.rodape{padding:var(--space-7) 0 calc(var(--space-7) + env(safe-area-inset-bottom));border-top:var(--border-thin) solid var(--border-subtle);background:var(--surface-page)}
.rodape__linha{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5) var(--space-6)}
.rodape__nav{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);font-size:var(--fs-body-sm)}
.rodape__nav a{color:var(--role-text-2)}
.rodape__nav a:hover{color:var(--role-accent)}
.rodape__redes{display:flex;gap:var(--space-2);margin-left:auto}
.rodape__texto{margin-top:var(--space-5);max-width:var(--page-media);font-size:var(--fs-caption);line-height:var(--lh-caption-lg);color:var(--role-text-2)}

/* Barra do celular */
.barra{position:fixed;inset:auto 0 0;z-index:40;display:flex;gap:var(--space-2-5);padding:var(--space-2-5) var(--gutter-mobile) calc(var(--space-2-5) + env(safe-area-inset-bottom));background:var(--role-nav);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass));border-top:var(--border-thin) solid var(--border-subtle);transform:translateY(110%);transition:transform var(--dur-slow) var(--ease-out)}
.barra.is-on{transform:none}
.barra .vb-btn{flex:1;height:var(--control-lg)}
.barra__wa{display:grid;place-items:center;width:var(--control-lg);height:var(--control-lg);flex:none;border-radius:50%;background:var(--vb-whatsapp);color:var(--vb-whatsapp-ink)}
.barra__wa .vb-icon{width:var(--icon-lg);height:var(--icon-lg)}
@media (min-width:760px){.barra{display:none}}

/* Diagnóstico em conversa (o mesmo de antes, com os componentes do sistema) */
.diag,.agenda,.lightbox{border:0;padding:0;margin:0;color:var(--text-primary);background:var(--surface-page);width:100%;max-width:100%;height:100%;max-height:100%;font-family:var(--font-sans)}
.diag::backdrop,.agenda::backdrop,.lightbox::backdrop{background:var(--vb-navy-45);-webkit-backdrop-filter:blur(var(--blur-overlay));backdrop-filter:blur(var(--blur-overlay))}
.diag[open],.agenda[open],.lightbox[open]{display:block}
@media (min-width:760px){
  .diag{margin:0 0 0 auto;width:min(var(--dialog-w),100vw);box-shadow:var(--shadow-dialog);animation:diag-entra var(--dur-base) var(--ease-out)}
  @keyframes diag-entra{from{transform:translateX(var(--space-6));opacity:0}}
}
.diag__in,.agenda__in{height:100%;display:flex;flex-direction:column;padding:var(--space-4-5) var(--space-5) var(--space-3-5)}
.diag__topo{display:flex;align-items:center;gap:var(--space-3);font-size:var(--fs-body-sm);color:var(--role-text-2)}
.diag__topo img{width:var(--tile-xs);height:auto}
.diag__topo p{margin:0 auto 0 0;line-height:var(--lh-body-sm)}
.diag__topo p span{display:block;font-size:var(--fs-caption)}
.diag__topo b{color:var(--text-primary);font-weight:var(--fw-extra);margin-right:var(--space-1-5)}
.diag__prog{flex:none;margin:var(--space-4) 0 var(--space-1-5)}
.diag__prog i{display:block;width:0}
.diag__pessoa{flex:none;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1-5) var(--space-3);padding:var(--space-2) 0 var(--space-0-5);font-size:var(--fs-body-sm);color:var(--role-text-2)}
.diag__pessoa b{color:var(--text-primary)}
.diag__pessoa small{color:var(--vb-green-700);font-size:var(--fs-caption)}
.diag__pessoa-btn{min-height:var(--control-sm);padding:0 var(--space-3);border-radius:var(--radius-pill);border:var(--border-thin) solid var(--border-brand);background:var(--vb-white-80);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-label);font-weight:var(--fw-bold);cursor:pointer}
.diag__pessoa-btn:hover{background:var(--vb-blue-50);border-color:var(--vb-teal-500)}
.diag__pessoa-form{display:flex;flex-wrap:wrap;gap:var(--space-2);width:100%}
.diag__pessoa-form input{flex:1 1 var(--p-card-flutuante);min-width:0;min-height:var(--control-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-control);border:var(--border-thin) solid var(--border-default);font-family:var(--font-sans);font-size:var(--fs-body)}
.diag__pessoa-form input:focus{outline:none;border-color:var(--vb-teal-500);box-shadow:var(--focus-ring)}
.diag__pessoa-form button[type="submit"]{min-height:var(--control-sm);padding:0 var(--space-4);border-radius:var(--radius-pill);border:0;background:var(--gradient-primary);color:var(--vb-white);font-family:var(--font-sans);font-weight:var(--fw-bold);cursor:pointer}
.diag__conversa{flex:1;margin:0;padding:var(--space-4-5) 0 var(--space-2);overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-3-5);overscroll-behavior:contain}
.diag__conversa > li{max-width:92%;animation:diag-fala var(--dur-base) ease both}
@keyframes diag-fala{from{opacity:0;transform:translateY(var(--space-1-5))}}
.diag__ia{color:var(--role-text-2);line-height:var(--lh-body)}
.diag__ia.is-atual{color:var(--text-primary);font-size:var(--fs-h4);line-height:var(--lh-h4);font-weight:var(--fw-extra);letter-spacing:var(--ls-tight)}
.diag__eu{align-self:flex-end;padding:var(--space-2) var(--space-3-5);border-radius:var(--radius-md) var(--radius-md) var(--radius-xs) var(--radius-md);background:var(--vb-blue-50);border:var(--border-thin) solid var(--vb-blue-100);color:var(--text-primary);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold)}
.diag__eu[data-a]{cursor:pointer}
.diag__eu[data-a]::after{content:"editar";margin-left:var(--space-2-5);font-size:var(--fs-micro);color:var(--vb-teal-700);text-decoration:underline}
.diag__eu[data-a]:hover{background:var(--vb-blue-100)}
.diag__voltar{display:inline-block;margin-top:var(--space-3);padding:var(--space-1-5) 0;background:none;border:0;color:var(--role-text-2);font-family:var(--font-sans);font-size:var(--fs-body-sm);text-decoration:underline;cursor:pointer}
.diag__digitando{display:inline-flex;gap:var(--space-1);padding:var(--space-1-5) 0}
.diag__digitando i{width:var(--dot);height:var(--dot);border-radius:50%;background:var(--vb-teal-500);animation:diag-ponto var(--dur-spin) infinite ease-in-out}
.diag__digitando i:nth-child(2){animation-delay:var(--dur-fast)}
.diag__digitando i:nth-child(3){animation-delay:calc(var(--dur-fast) * 2)}
@keyframes diag-ponto{0%,100%{opacity:0.25}50%{opacity:1}}
.diag__plano{max-width:100%!important;width:100%;padding:var(--space-4-5);border-radius:var(--radius-lg);background:linear-gradient(var(--surface-card),var(--surface-card)) padding-box,var(--gradient-primary) border-box;border:var(--border-strong) solid transparent;box-shadow:var(--shadow-featured)}
.diag__plano > span{display:block;font-size:var(--fs-caption);color:var(--role-text-2)}
.diag__plano h4{margin:var(--space-0-5) 0 var(--space-2-5);font-size:var(--fs-h3);font-weight:var(--fw-extra)}
.diag__plano ul{margin:0 0 var(--space-3);display:grid;gap:var(--space-1);font-size:var(--fs-body-sm);color:var(--text-muted)}
.diag__plano ul li::before{content:"✓ ";color:var(--vb-teal-700);font-weight:var(--fw-bold)}
.diag__valor{display:grid;gap:var(--space-0-5);padding-top:var(--space-3);border-top:var(--border-thin) solid var(--border-subtle)}
.diag__valor b{font-size:var(--fs-body-lg);font-weight:var(--fw-extra)}
.diag__valor small{color:var(--role-text-2);font-size:var(--fs-caption)}
.diag__resposta{flex:none;padding-top:var(--space-3);border-top:var(--border-thin) solid var(--border-subtle)}
.diag__opcoes{display:flex;flex-wrap:wrap;gap:var(--space-2-5)}
.diag__opcoes button{cursor:pointer;min-height:var(--control-md);padding:var(--space-2-5) var(--space-4-5);border-radius:var(--radius-pill);background:var(--vb-white-80);color:var(--text-primary);border:var(--border-thin) solid var(--border-brand);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-bold);transition:background var(--dur-base),border-color var(--dur-base),transform var(--dur-fast)}
.diag__opcoes button:hover{background:var(--vb-blue-50);border-color:var(--vb-teal-500)}
.diag__opcoes button:active{transform:scale(var(--press-scale))}
.diag__opcoes button[aria-pressed="true"],.diag__opcoes .diag__ok{background:var(--gradient-primary);color:var(--vb-white);border-color:transparent;box-shadow:var(--shadow-glow-sm)}
.diag__opcoes button[aria-pressed="true"]::before{content:"✓ "}
.diag__opcoes .diag__ok:disabled{background:var(--vb-ink-100);color:var(--vb-ink-300);box-shadow:none;cursor:not-allowed}
.diag__campo{display:flex;gap:var(--space-2-5)}
.diag__campo input{flex:1;min-width:0;min-height:var(--control-lg);padding:var(--space-3) var(--space-4);border-radius:var(--radius-control);border:var(--border-thin) solid var(--border-default);background:var(--surface-page);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-body)}
.diag__campo input::placeholder{color:var(--vb-ink-500)}
.diag__campo input:focus{outline:none;border-color:var(--vb-teal-500);box-shadow:var(--focus-ring)}
.diag__campo button{flex:none;min-height:var(--control-lg);padding:0 var(--space-5);border-radius:var(--radius-pill);border:0;background:var(--gradient-primary);color:var(--vb-white);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-bold);box-shadow:var(--shadow-glow-sm);cursor:pointer}
.diag__campo button:disabled{opacity:0.4;cursor:not-allowed}
.diag__erro{margin:var(--space-2) 0 0;font-size:var(--fs-body-sm);color:var(--vb-red-700)}
.diag__fim{display:grid;gap:var(--space-3)}
.diag__nota{flex:none;margin:var(--space-2-5) 0 0;font-size:var(--fs-caption);color:var(--role-text-2)}
.diag__nota a{color:inherit}
.diag .hp{position:absolute;width:var(--border-thin);height:var(--border-thin);overflow:hidden;clip-path:inset(50%);opacity:0}
@media (max-width:759px){.diag__opcoes button{flex:1 1 calc(50% - var(--space-2-5));text-align:center}}
.agenda__quadro{flex:1;min-height:0;margin-top:var(--space-3-5);border-radius:var(--radius-md);overflow:hidden;background:var(--surface-card);border:var(--border-thin) solid var(--border-subtle)}
.agenda__quadro .calendly-inline-widget,.agenda__quadro iframe{width:100%;height:100%;min-height:0!important}
.lightbox{background:var(--vb-navy-82)}
.lightbox__in{height:100%;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}
.lightbox__barra{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--vb-white);font-size:var(--fs-body-sm)}
.lightbox img{flex:1;min-height:0;width:100%;object-fit:contain;border-radius:var(--radius-md)}
