/* Lotaloja v9 — quadra comercial de Brasília: grade de concreto, tipografia larga, um amarelo só para agir. */
@font-face{font-family:"Archivo";src:url(fonts/archivo-700_800.woff2) format("woff2");font-weight:700 800;font-stretch:100% 112%;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url(fonts/ibm-plex-sans-normal-400_700.woff2) format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(fonts/ibm-plex-mono-normal-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(fonts/instrument-serif-italic-400.woff2) format("woff2");font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:"Plex fallback";src:local("Arial");size-adjust:104%;ascent-override:96%;descent-override:26%}
/* substitutos com a largura medida da Archivo e da Instrument Serif: a primeira pintura já quebra o título igual à final (CLS, 28/10) */
@font-face{font-family:"Archivo fallback";src:local("Arial Bold"),local("Arial-BoldMT"),local("Roboto Bold"),local("Roboto-Bold");font-weight:700 800;size-adjust:103.4%}
@font-face{font-family:"Instrument fallback";src:local("Georgia Italic"),local("Georgia-Italic");font-style:italic;size-adjust:78%}

:root{
  --bg:#F5F5F1;        /* concreto claro: fundo da página */
  --bg-2:#EAEBE5;      /* névoa: faixas alternadas */
  --surface:#FFFFFF;   /* superfícies que precisam se destacar */
  --ink:#132033;       /* noite: texto e marca */
  --ink-2:#4A586B;     /* texto de apoio */
  --line:#D3D6CF;      /* fios e divisórias */
  --ipe:#D9A10E;       /* ação principal e o ponto da marca */
  --on-ipe:#132033;
  --night:#132033;     /* faixas escuras, igual nos dois temas */
  --on-night:#EEF0EE;
  --link:#2E5B8A;
  --ok:#2F6B4F;
  --focus:#2E5B8A;
  --btn-shadow:0 8px 20px -10px rgba(140,98,0,.55);
  --f-display:"Archivo","Archivo fallback","Arial Black",sans-serif;
  --f-body:"IBM Plex Sans","Plex fallback",system-ui,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,"Cascadia Mono",monospace;
  --f-accent:"Instrument Serif","Instrument fallback",Georgia,serif;
  --wrap:1240px;
  --gutter:max(clamp(16px,4vw,48px),env(safe-area-inset-left,0px));
  --gutter-r:max(clamp(16px,4vw,48px),env(safe-area-inset-right,0px));
  --space-section:clamp(52px,6.5vw,96px);
  --radius:14px;
  --ease-spring:cubic-bezier(.2,.9,.25,1.15);
  --ease-out:cubic-bezier(.16,1,.3,1);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0D1624;--bg-2:#132033;--surface:#16243A;--ink:#EEF0EE;--ink-2:#A9B5C4;--line:#2A3850;
  --ipe:#E3AE1F;--link:#9EC1E6;--ok:#7CC4A0;--focus:#E3AE1F;--btn-shadow:none;color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0D1624;--bg-2:#132033;--surface:#16243A;--ink:#EEF0EE;--ink-2:#A9B5C4;--line:#2A3850;
  --ipe:#E3AE1F;--link:#9EC1E6;--ok:#7CC4A0;--focus:#E3AE1F;--btn-shadow:none;color-scheme:dark}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:88px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.6 var(--f-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
img,video,svg{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
p,li,dd,figcaption,summary,blockquote,td,th{text-wrap:balance}
.transcript p{text-wrap:pretty}
h1,h2,h3,h4{font-family:var(--f-display);font-stretch:112%;font-weight:760;letter-spacing:-.02em;line-height:1.04;margin:0;text-wrap:balance}
h1{font-size:clamp(2.6rem,7.4vw,6.4rem);font-weight:800;letter-spacing:-.035em;line-height:.98}
h2{font-size:clamp(2rem,4.6vw,3.6rem)}
@media (max-width:480px){h1,h2,h3{font-stretch:100%}}
h3{font-size:clamp(1.25rem,1.8vw,1.5rem);font-stretch:105%;letter-spacing:-.01em;line-height:1.15}
p{margin:0}
/* Clique e toque não mostram contorno nem o quadrado cinza do navegador; o teclado continua vendo o foco */
html,*,*::before,*::after{-webkit-tap-highlight-color:transparent}
button,summary,[role=button],.btn,.chip,.tab,.nav a{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
:focus:not(:focus-visible){outline:none}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}
::selection{background:var(--ipe);color:var(--on-ipe)}
.nw{white-space:nowrap}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:var(--gutter);top:-80px;z-index:100;background:var(--ink);color:var(--bg);padding:12px 16px;border-radius:8px}
.skip:focus{top:12px}
[hidden]{display:none!important}

.wrap{max-width:var(--wrap);margin-inline:auto;padding-left:var(--gutter);padding-right:var(--gutter-r)}
.section{padding-block:var(--space-section)}
.section--tint{background:var(--bg-2)}
/* Seções abaixo da dobra só são calculadas quando chegam perto da tela */
/* a segunda parte do topo (.hero--b) fica na primeira tela: sem content-visibility, senão nasce com 900 px e a página pula (CLS, 28/10) */
main > section:not(:first-child):not(.hero--b),.foot{content-visibility:auto;contain-intrinsic-size:auto 900px}
.section--night{background:var(--night);color:var(--on-night);--ink:var(--on-night);--ink-2:#A9B5C4;--line:#2A3850;--link:#9EC1E6;--focus:#E3AE1F;--btn-shadow:none}
.section + .section--tint,.section--tint + .section{border-top:0}
.eyebrow{font:500 .78rem/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);display:flex;gap:.6em;align-items:center;margin:0 0 20px}
.eyebrow::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--ipe);flex:none}
.lead{font-size:clamp(1.12rem,1.6vw,1.32rem);line-height:1.55;color:var(--ink-2);max-width:40ch}
.head{display:grid;gap:18px;max-width:62rem;margin-bottom:clamp(28px,3.6vw,48px)}
.head > p:not(.eyebrow){max-width:46ch;color:var(--ink-2);font-size:1.1rem}
.accent{font-family:var(--f-accent);font-style:italic;font-weight:400;font-stretch:100%;letter-spacing:-.01em}
.mono{font-family:var(--f-mono);font-weight:500}

/* Topo sólido, nunca vidro sobre a foto */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg)}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--bg);border-bottom:1px solid transparent;transition:border-color .3s}
.top.is-scrolled{border-bottom-color:var(--line)}
.top__in{display:flex;align-items:center;gap:20px;min-height:76px}
.logo{display:flex;align-items:center;flex:none;text-decoration:none}
.logo svg{height:30px;width:auto}
@media (max-width:600px){.logo svg{height:24px}}
.foot__ico{display:block;line-height:0}
.foot__ico svg{width:52px;height:52px}
.on-dark{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .on-light{display:none}:root:not([data-theme="light"]) .on-dark{display:block}}
:root[data-theme="dark"] .on-light{display:none}:root[data-theme="dark"] .on-dark{display:block}
.nav{margin-left:auto;display:flex;align-items:center;gap:6px}
.nav a{font-size:.95rem;font-weight:500;text-decoration:none;padding:10px 12px;border-radius:10px;color:var(--ink)}
.nav a:hover{background:var(--bg-2)}
.nav a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--ipe);text-decoration-thickness:2px;text-underline-offset:.45em}
.nav .nav__lang{font:500 .8rem/1 var(--f-mono);letter-spacing:.06em;color:var(--ink-2)}
.nav .nav__login{color:var(--ink-2)}
.top .btn{margin-left:6px}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:12px;width:46px;height:46px;color:var(--ink);cursor:pointer;align-items:center;justify-content:center}
.menu-btn span,.menu-btn span::before,.menu-btn span::after{display:block;width:18px;height:1.5px;background:currentColor;position:relative;transition:transform .35s var(--ease-out),opacity .2s}
.menu-btn span::before,.menu-btn span::after{content:"";position:absolute;left:0}
.menu-btn span::before{top:-6px}.menu-btn span::after{top:6px}
.menu-btn[aria-expanded="true"] span{background:transparent}
.menu-btn[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}
@media (max-width:980px){
  .menu-btn{display:inline-flex}
  .top .btn--top{display:none}
  .nav{position:fixed;inset:calc(76px + env(safe-area-inset-top,0px)) 0 0;background:var(--bg);flex-direction:column;align-items:stretch;gap:0;padding:16px var(--gutter-r) 40px var(--gutter);overflow:auto;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s,transform .35s var(--ease-out),visibility 0s .35s}
  .nav.is-open{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .35s var(--ease-out)}
  .nav a{font:700 1.6rem/1.2 var(--f-display);font-stretch:112%;padding:16px 0;border-bottom:1px solid var(--line);border-radius:0}
  .nav .nav__lang,.nav .nav__login{font:500 .95rem/1.2 var(--f-mono)}
  .nav .btn{margin-top:24px;justify-content:center}
}
@media (min-width:981px){.nav .btn--menu{display:none}}

/* Ferramentas do topo: idioma (bandeiras) e tema (sol/lua), ao lado do menu */
.tools{display:flex;align-items:center;gap:6px;flex:none}
.tool{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:42px;min-width:42px;padding:0 10px;border-radius:12px;border:1px solid var(--line);background:none;color:var(--ink);cursor:pointer;transition:border-color .2s,background-color .2s}
.tool:hover{border-color:var(--ink);background:var(--bg-2)}
.tool svg{display:block}
.flag{width:22px;height:16px;border-radius:3px;box-shadow:0 0 0 1px rgba(19,32,51,.12)}
.lang{position:relative}
.lang__chev{width:10px;height:10px;color:var(--ink-2);transition:transform .25s var(--ease-out)}
.lang__btn[aria-expanded="true"] .lang__chev{transform:rotate(180deg)}
.lang__list{position:absolute;right:0;top:calc(100% + 8px);min-width:178px;margin:0;padding:6px;list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px -18px rgba(19,32,51,.35);z-index:60;animation:langin .22s var(--ease-out)}
.lang__list a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;color:var(--ink);text-decoration:none;font:500 .92rem/1 var(--f-body)}
.lang__list a:hover{background:var(--bg-2)}
.lang__list a[aria-current]{font-weight:600}
.lang__list a[aria-current]::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--ipe);margin-left:auto}
@keyframes langin{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.theme-btn{width:42px;padding:0;position:relative;overflow:hidden}
.theme-btn svg{width:19px;height:19px;position:absolute;transition:transform .45s var(--ease-out),opacity .3s}
.theme-btn .i-moon{transform:translateY(130%) rotate(-40deg);opacity:0}
.theme-btn[aria-pressed="true"] .i-sun{transform:translateY(-130%) rotate(60deg);opacity:0}
.theme-btn[aria-pressed="true"] .i-moon{transform:none;opacity:1}
.theme-btn .i-sun{color:var(--ipe)}
.theme-anim,.theme-anim *{transition:background-color .4s ease,color .4s ease,border-color .4s ease !important}
@media (max-width:980px){.tools{margin-left:auto}.menu-btn{margin-left:0}}
@media (max-width:380px){.tools{gap:4px}.tool{height:40px;min-width:40px;padding:0 8px}.theme-btn{width:40px}.lang__chev{display:none}.top__in{gap:10px}}
@media (prefers-reduced-motion:reduce){.theme-btn svg,.lang__list{transition:none;animation:none}}

/* Botões: um amarelo por tela, o resto é texto */
.btn{display:inline-flex;align-items:center;gap:.6em;min-height:52px;padding:0 24px;border-radius:999px;font:600 1rem/1 var(--f-body);text-decoration:none;cursor:pointer;border:1px solid transparent;transition:transform .45s var(--ease-spring),box-shadow .3s,background-color .2s,color .2s;white-space:nowrap}
.btn--primary{background:var(--ipe);color:var(--on-ipe);box-shadow:var(--btn-shadow)}
.btn--primary:hover{transform:translateY(-2px)}
.btn--primary:active{transform:translateY(0) scale(.98)}
.btn--ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.btn--ghost:hover{background:var(--ink);color:var(--bg)}
.btn--small{min-height:44px;padding:0 18px;font-size:.92rem}
.btn .arr{transition:transform .45s var(--ease-spring)}
.btn:hover .arr{transform:translateX(3px)}
.link{font-weight:600;text-decoration:underline;text-decoration-color:var(--ipe);text-decoration-thickness:2px;text-underline-offset:.3em}
.link:hover{text-decoration-color:currentColor}
.actions{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center}
.fine{font-size:.88rem;color:var(--ink-2)}

/* Hero */
.hero{padding-block:4px clamp(10px,1.6vw,22px)}
.hero h1{max-width:none}
.hero h1 .l{display:block}
.hero__grid{display:grid;grid-template-columns:1fr;gap:34px}
@media (min-width:900px){.hero__grid{gap:44px}.hero__side{justify-self:end;max-width:30rem}}
.hero h1{font-size:clamp(2.6rem,6.6vw,5.3rem);font-stretch:100%}
.hero__side{display:grid;gap:26px;max-width:34rem}
.hero__meta{display:flex;flex-wrap:wrap;gap:8px 18px;font:500 .78rem/1.4 var(--f-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}
@media (max-width:700px){.hero .actions{row-gap:22px}}
.hero__meta span{display:inline-flex;gap:.5em;align-items:center}
.hero__meta span::before{content:"";width:5px;height:5px;background:var(--ink-2);border-radius:50%}
.photo{margin:0;position:relative}
.photo img{width:100%;object-fit:cover;background:var(--bg-2)}
.photo--band img{aspect-ratio:16/7;max-height:78vh}
.band__media{position:relative;overflow:hidden}
.band__media img{display:block}
.band__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease;pointer-events:none}
.band__video.is-on{opacity:1}
/* Faixa com o filme narrado (PT): 16:9 inteiro, sem corte, para a legenda e os grafismos aparecerem */
.has-video .band__media{max-width:calc(80vh * 16 / 9);margin-inline:auto;background:var(--night)}
.has-video .band__media img{aspect-ratio:16/9;max-height:none}
.band__bar{position:absolute;left:0;right:0;bottom:0;height:3px;z-index:3;pointer-events:none}
/* barra clicável para avançar ou voltar: área de toque invisível acima dela, sem mudar o visual */
.band__bar.is-seek{pointer-events:auto;cursor:pointer;touch-action:none}
.band__bar.is-seek::before{content:"";position:absolute;left:0;right:0;bottom:0;height:16px}
.band__bar i{display:block;height:100%;background:var(--ipe);transform:scaleX(0);transform-origin:0 50%}
@keyframes soundping{0%{transform:scale(.9);opacity:.7}70%,100%{transform:scale(1.6);opacity:0}}
@media (max-width:700px){.has-video .band__media img{aspect-ratio:16/9}}
/* Controles do filme: play à esquerda, som e tela cheia à direita. Só aparecem ao tocar/passar o mouse (e nos 3 s iniciais) */
.has-video .band__media{cursor:pointer;-webkit-tap-highlight-color:transparent}
.vctl{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;
  padding:clamp(10px,1.6vw,20px);pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity .35s var(--ease-out),transform .35s var(--ease-out)}
.vctl__r{display:flex;gap:8px}
/* controles só aparecem depois de um toque ou clique no vídeo, ficam alguns segundos e somem (Felipe, 28/10) */
.band__media.show-ctl .vctl{opacity:1;transform:none}
.band__media.show-ctl .vbtn{pointer-events:auto}
.vbtn{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid rgba(238,240,238,.18);background:rgba(13,22,36,.38);
  -webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);color:rgba(238,240,238,.62);cursor:pointer;pointer-events:none;
  transition:color .25s,background .25s,border-color .25s,transform .25s var(--ease-out)}
.vbtn:hover{color:#EEF0EE;background:rgba(13,22,36,.6);border-color:rgba(238,240,238,.34)}
.vbtn:active{transform:scale(.93)}
.vbtn:focus-visible{outline:2px solid var(--ipe);outline-offset:3px;pointer-events:auto}
.vctl:focus-within{opacity:1;transform:none}
.vbtn--snd[aria-pressed="true"]{color:var(--ipe)}
.vbtn--snd .i-w,.vbtn--snd[aria-pressed="true"] .i-x{display:none}
.vbtn--snd[aria-pressed="true"] .i-w{display:inline}
.vbtn--play .i-play,.is-paused .vbtn--play .i-pause{display:none}
.is-paused .vbtn--play .i-play{display:inline}
.band__media:fullscreen{max-width:none;background:#000}
.band__media:fullscreen .band__video{object-fit:contain}
.band__media:fullscreen img{opacity:0}
@media (max-width:700px){.vbtn{width:34px;height:34px}.vctl{padding:8px}}
@media (max-width:700px){.photo--band img{aspect-ratio:4/3}}
.photo figcaption{display:flex;justify-content:space-between;gap:16px;font:500 .74rem/1.4 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);padding:12px var(--gutter-r) 0 var(--gutter)}
.photo--inset{border-radius:var(--radius);overflow:hidden}
.photo--inset img{aspect-ratio:4/3}
.photo--tall img{aspect-ratio:4/5}

/* Lista com fios: os serviços */
.rows{list-style:none;margin:0;padding:0}
.row + .row{margin-top:4px}
.row a{display:grid;grid-template-columns:1fr;gap:10px 40px;padding:20px 0;text-decoration:none;align-items:baseline}
@media (min-width:860px){.row a{grid-template-columns:4.5rem minmax(0,1fr) minmax(0,1fr) 15rem}.row__go{justify-self:end}}
.row__n{font:500 .8rem/1 var(--f-mono);color:var(--ink-2)}
.row h3{font-size:clamp(1.5rem,2.6vw,2.2rem)}
.row p{color:var(--ink-2)}
.row__go{font:500 .8rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;display:inline-flex;gap:.6em;align-items:center;white-space:nowrap}
.row__go .arr{transition:transform .45s var(--ease-spring)}
.row a:hover h3{text-decoration:underline;text-decoration-color:var(--ipe);text-decoration-thickness:3px;text-underline-offset:.18em}
.row a:hover .arr{transform:translateX(5px)}

/* Amostra de atendimento */
.demo{display:grid;gap:40px}
@media (min-width:960px){.demo{grid-template-columns:minmax(0,1fr) minmax(0,26rem);align-items:center;gap:72px}}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.chip{font:500 .95rem/1.2 var(--f-body);padding:12px 16px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;transition:border-color .2s,transform .4s var(--ease-spring)}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:var(--bg)}
.phone{background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:18px;box-shadow:0 30px 60px -40px rgba(19,32,51,.45)}
.phone__bar{display:flex;align-items:center;gap:12px;padding:4px 6px 14px;border-bottom:1px solid var(--line)}
.phone__av{width:38px;height:38px;border-radius:50%;background:var(--bg-2);display:grid;place-items:center;font:700 .9rem/1 var(--f-display)}
.phone__name{font-weight:600;line-height:1.2}
.phone__name small{display:block;font:400 .8rem/1.3 var(--f-body);color:var(--ink-2)}
.thread{display:flex;flex-direction:column;gap:10px;min-height:320px;padding:18px 4px 6px}
.msg{max-width:86%;padding:10px 14px;border-radius:18px;font-size:.95rem;line-height:1.45}
.msg--in{align-self:flex-start;background:var(--bg-2);border-bottom-left-radius:6px}
.msg--out{align-self:flex-end;background:#DCEFE4;color:#132033;border-bottom-right-radius:6px}
.msg--note{align-self:center;max-width:100%;font:500 .74rem/1.4 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);background:none;padding:4px}
.msg time{display:block;font:500 .7rem/1 var(--f-mono);opacity:.85;margin-top:6px;text-align:right}
@media (prefers-reduced-motion:no-preference){.msg.is-new{animation:pop .5s var(--ease-spring) both}}
@keyframes pop{from{opacity:0;transform:translateY(8px) scale(.97)}}
.typing{align-self:flex-end;display:flex;gap:4px;padding:12px 14px;background:#DCEFE4;border-radius:18px}
.typing i{width:6px;height:6px;border-radius:50%;background:#2F6B4F;opacity:.4}
@media (prefers-reduced-motion:no-preference){.typing i{animation:blink 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}}
@keyframes blink{50%{opacity:1}}
.badge{display:inline-flex;align-items:center;gap:8px;font:500 .72rem/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);border:1px dashed var(--line);border-radius:999px;padding:6px 12px}

/* Processo em 4 passos */
.steps{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:s;position:relative}
.step{display:grid;grid-template-columns:3.2rem minmax(0,1fr);gap:8px 22px;padding:18px 0}
@media (min-width:900px){.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.step{grid-template-columns:1fr;border-top:0;padding:0}}
.step__n{font:500 .8rem/1 var(--f-mono);color:var(--ink-2);display:flex;align-items:center;gap:10px;align-self:start;margin-top:.45em}
@media (min-width:900px){.step__n{margin-top:0}}
.step__dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--ink);background:var(--bg);flex:none}
.step h3{margin-bottom:10px}
.step p{color:var(--ink-2);font-size:1rem}
.track{display:none}
@media (min-width:900px){
  .track{display:block;height:2px;background:var(--line);margin:0 0 30px;position:relative;overflow:hidden;border-radius:2px}
  .track i{position:absolute;inset:0;background:var(--ipe);transform-origin:left;transform:scaleX(1)}
  @supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){
    .track i{transform:scaleX(.04);animation:fill linear both;animation-timeline:view();animation-range:entry 30% cover 55%}
  }}
}
@keyframes fill{to{transform:scaleX(1)}}

/* Planos */
.plans{display:grid;gap:18px}
@media (min-width:960px){.plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}}
.plan{display:flex;flex-direction:column;gap:20px;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
@media (min-width:960px){.plan{border:0;border-radius:0}.plan + .plan{border-left:1px solid var(--line)}}
.plan__tag{font:500 .74rem/1.3 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}
.plan h3{font-size:1.9rem}
.price{display:flex;align-items:baseline;gap:6px;font-family:var(--f-display);font-stretch:100%;font-weight:700;font-size:clamp(2.2rem,3.4vw,2.9rem);letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1}
.price__usd{font:500 .85rem/1.3 var(--f-mono);color:var(--ink-2);margin-top:-10px}
.price small{font:500 .9rem/1 var(--f-body);letter-spacing:0;color:var(--ink-2)}
.price__cur{font-size:.5em;font-weight:600;letter-spacing:0}
.plan__for{color:var(--ink-2);font-size:1rem}
.ticks{list-style:none;margin:0;padding:0;display:grid;gap:12px;font-size:.98rem}
.ticks li{display:grid;grid-template-columns:18px 1fr;gap:10px}
.ticks li::before{content:"";width:10px;height:6px;border-left:2px solid var(--ok);border-bottom:2px solid var(--ok);transform:rotate(-45deg) translate(2px,2px);margin-top:.35em}
.ticks--out li::before{width:10px;height:0;border-left:0;border-bottom:2px solid var(--ink-2);transform:none;margin-top:.7em}
.plan .btn{margin-top:4px;align-self:flex-start}
/* cards do tamanho do próprio conteúdo; no computador as divisórias ficam no fundo da grade */
.plans{align-items:start}
@media (min-width:960px){.plans{background:linear-gradient(var(--line),var(--line)) 33.333% 0/1px 100% no-repeat,linear-gradient(var(--line),var(--line)) 66.666% 0/1px 100% no-repeat,var(--surface)}.plan + .plan{border-left:0}}
/* escada: o que cada plano acrescenta ao anterior */
.escada{display:grid;gap:14px}
.degrau{padding:24px 26px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);display:grid;gap:14px;align-content:start}
.degrau__k{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font:500 .8rem/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.degrau__k span{text-transform:none;letter-spacing:.02em}
.degrau__k b{font:700 1.35rem/1.1 var(--f-display);letter-spacing:0;text-transform:none;color:var(--ink)}
.degrau__mais{font-size:.95rem;color:var(--ink-2)}
.degrau--2{border-top:3px solid var(--ipe)}
.degrau--3{border-top:3px solid var(--ink)}
@media (min-width:900px){.escada{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px}}
.plan--mid{position:relative}
.founder{display:inline-flex;font:500 .76rem/1.3 var(--f-mono);color:var(--ok)}
.note{margin-top:28px;display:grid;gap:10px;max-width:62rem;color:var(--ink-2);font-size:.95rem}

/* Comparador */
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
table{border-collapse:collapse;width:100%;min-width:720px;font-size:.95rem}
th,td{text-align:left;padding:16px 20px;border-bottom:1px solid var(--line);vertical-align:top}
thead th{font:500 .74rem/1.3 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}
tbody th{font-weight:600}
tr:last-child td,tr:last-child th{border-bottom:0}
.yes{color:var(--ok);font-weight:600}
.no{color:var(--ink-2)}

/* Podcast */
.pod{display:grid;gap:32px;align-items:start}
@media (min-width:960px){.pod{grid-template-columns:minmax(0,22rem) minmax(0,1fr);gap:56px}}
.pod__cover{border-radius:var(--radius);overflow:hidden;aspect-ratio:1;background:var(--bg-2)}
.pod__cover img{width:100%;height:100%;object-fit:cover}
.player{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:grid;gap:18px}
.tabs{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:4px;gap:4px;justify-self:start}
.tab{font:500 .82rem/1 var(--f-mono);letter-spacing:.05em;padding:10px 16px;border-radius:999px;border:0;background:none;color:var(--ink-2);cursor:pointer}
.tab[aria-selected="true"]{background:var(--ink);color:var(--bg)}
.player__main{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}
.play{width:62px;height:62px;border-radius:50%;border:0;background:var(--ipe);color:var(--on-ipe);display:grid;place-items:center;cursor:pointer;box-shadow:var(--btn-shadow);transition:transform .45s var(--ease-spring)}
.play:hover{transform:scale(1.05)}
.play svg{width:22px;height:22px}
.play .i-pause,.is-playing .play .i-play{display:none}
.is-playing .play .i-pause{display:inline}
.wave{position:relative;height:56px;cursor:pointer;touch-action:none}
.wave canvas{width:100%;height:100%;display:block}
.player__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.time{font:500 .82rem/1 var(--f-mono);color:var(--ink-2);font-variant-numeric:tabular-nums}
.ctrls{display:flex;gap:6px}
.ctrl{font:500 .8rem/1 var(--f-mono);min-width:48px;height:38px;padding:0 10px;border-radius:10px;border:1px solid var(--line);background:none;color:var(--ink);cursor:pointer}
.ctrl:hover{border-color:var(--ink)}
.chapters{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.chapters button{width:100%;display:grid;grid-template-columns:3.6rem 1fr;gap:12px;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:12px 2px;color:var(--ink);font:400 .95rem/1.4 var(--f-body);cursor:pointer}
.chapters button span:first-child{font:500 .8rem/1.6 var(--f-mono);color:var(--ink-2)}
.chapters button[aria-current="true"]{font-weight:600}
.chapters button[aria-current="true"] span:first-child{color:var(--ink)}
.transcript{padding-top:10px}
.transcript summary{cursor:pointer;font-weight:600}
.transcript div{display:grid;gap:12px;margin-top:14px;max-height:420px;overflow:auto;padding-right:8px;font-size:.96rem}
.transcript b{font-family:var(--f-mono);font-weight:500;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}

/* Setores */
.sectors{display:grid;gap:22px}
@media (min-width:700px){.sectors{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.sectors{grid-template-columns:repeat(4,minmax(0,1fr))}}
.sector{text-decoration:none;display:grid;gap:14px}
.sector .photo img{aspect-ratio:4/5;border-radius:var(--radius);transition:transform .8s var(--ease-out)}
.sector .photo{overflow:hidden;border-radius:var(--radius)}
.sector:hover .photo img{transform:scale(1.035)}
.sector h3{font-size:1.35rem}
.sector p{color:var(--ink-2);font-size:.98rem}

/* Fatos citáveis */
.facts{display:grid;gap:28px}
@media (min-width:900px){.facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}}
.fact{display:grid;gap:12px;align-content:start}
.fact h3{font-size:1.3rem}
.fact p{color:var(--ink-2);font-size:1rem}
.src{font:500 .74rem/1.4 var(--f-mono);letter-spacing:.03em;color:var(--ink-2)}
.src a{color:var(--link)}

/* Perguntas */
.faq{border-top:1px solid var(--line);max-width:62rem}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;padding:24px 0;font:700 clamp(1.1rem,1.6vw,1.3rem)/1.3 var(--f-display);font-stretch:105%;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";width:12px;height:12px;flex:none;margin-top:.35em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .45s var(--ease-spring)}
.faq details[open] summary::after{transform:rotate(225deg)}
.faq details > div{padding:0 0 26px;max-width:58ch;color:var(--ink-2);display:grid;gap:12px}

/* Faixa final */
.cta{display:grid;gap:30px}
@media (min-width:900px){.cta{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}.cta h2{grid-column:1/-1}}
.cta h2{font-size:clamp(2rem,5vw,4.2rem)}
.cta > *,.split > *,.hero__grid > *,.demo > *,.pod > *{min-width:0}
.cta__side{display:grid;gap:22px}
.cta .btn--ghost{border-color:var(--on-night);color:var(--on-night)}
.cta .btn--ghost:hover{background:var(--on-night);color:var(--night)}
.copyline{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font:500 .95rem/1.3 var(--f-mono)}
.copybtn{font:500 .75rem/1 var(--f-mono);letter-spacing:.05em;text-transform:uppercase;padding:8px 12px;border-radius:999px;border:1px solid currentColor;background:none;color:inherit;cursor:pointer}

/* Páginas internas */
.page-hero{padding-block:clamp(32px,5vw,72px) clamp(24px,3.6vw,48px)}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font:500 .76rem/1.3 var(--f-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);margin:0 0 26px;padding:0;list-style:none}
.crumbs li + li::before{content:"/";margin-right:8px;opacity:.5}
.crumbs a{text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.page-hero h1{font-size:clamp(2.3rem,6vw,5rem);max-width:16ch}
.page-hero .lead{margin-top:26px;max-width:44ch}
.page-hero .actions{margin-top:34px}
.split{display:grid;gap:40px}
@media (min-width:900px){.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:start}.split--media{align-items:center}}
.prose{display:grid;gap:18px;max-width:62ch}
.prose h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin-bottom:6px;text-wrap:balance}
@media (max-width:359px){.prose h2{font-size:1.5rem}}
.prose p{color:var(--ink-2)}
.prose ul{margin:0;padding-left:1.2em;display:grid;gap:8px;color:var(--ink-2)}
.qa{display:grid;gap:14px;padding:22px 0}
.qa h3{font-size:clamp(1.3rem,2vw,1.6rem)}
.qa p{color:var(--ink-2);max-width:60ch}
.qa .answer{color:var(--ink);font-size:1.12rem;max-width:54ch}
.scope{display:grid;gap:18px}
@media (min-width:900px){.scope{grid-template-columns:repeat(3,minmax(0,1fr))}}
.scope > div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:grid;gap:14px;align-content:start}
.scope h3{font-size:1.15rem}
.scope p{color:var(--ink-2);font-size:.98rem}
.cards{display:grid;gap:18px}
@media (min-width:800px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1150px){.cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;display:grid;gap:14px;align-content:start}
.card h3{font-size:1.35rem}
.card p,.card dd{color:var(--ink-2);font-size:.98rem;margin:0}
.card dl{display:grid;gap:12px;margin:0}
.card dt{font:500 .72rem/1.3 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink)}
.card .link{justify-self:start;margin-top:6px}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
.count{font:500 .8rem/1 var(--f-mono);color:var(--ink-2);margin-bottom:18px}

/* Diagnóstico */
.quiz{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(22px,4vw,44px);display:grid;gap:26px;max-width:46rem}
.quiz fieldset{border:0;margin:0;padding:0;display:grid;gap:22px}
.quiz legend{font:500 .78rem/1.3 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2);margin-bottom:6px;padding:0}
.q{display:grid;gap:10px}
.q > span{font:700 1.2rem/1.3 var(--f-display);font-stretch:105%}
.opts{display:grid;gap:8px}
.opt{position:relative}
.opt input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.opt span{display:block;padding:14px 16px;border:1px solid var(--line);border-radius:12px;transition:border-color .2s,background-color .2s}
.opt input:hover + span{border-color:var(--ink-2)}
.opt input:checked + span{border-color:var(--ink);background:var(--bg-2);font-weight:600}
.opt input:focus-visible + span{outline:2px solid var(--focus);outline-offset:2px}
.progress{display:flex;gap:6px}
.progress i{height:4px;flex:1;border-radius:4px;background:var(--line)}
.progress i.on{background:var(--ink)}
.err{color:#B3261E;font-weight:600;min-height:1.4em}
:root[data-theme="dark"] .err{color:#FFB4AB}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .err{color:#FFB4AB}}
.result{display:grid;gap:22px}
.result ol{margin:0;padding-left:1.3em;display:grid;gap:12px}
.bars{display:grid;gap:12px}
.bar{display:grid;grid-template-columns:7rem 1fr auto;gap:12px;align-items:center;font-size:.92rem}
.bar i{height:8px;border-radius:8px;background:var(--line);position:relative;overflow:hidden}
.bar i::after{content:"";position:absolute;inset:0;transform-origin:left;background:var(--ink)}
.bar.routine i::after{transform:scaleX(.33);background:var(--ok)}
.bar.review i::after{transform:scaleX(.66);background:var(--link)}
.bar.priority i::after{transform:scaleX(1);background:var(--ipe)}
textarea{width:100%;min-height:180px;font:400 .9rem/1.5 var(--f-mono);padding:12px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--ink)}

.refnote{background:var(--bg-2);border-radius:var(--radius);padding:18px 22px;display:grid;gap:10px;font-size:.95rem}
/* auditoria 28/10: faixa de indicação (P1-3), porta do parceiro no rodapé (P0-1) e nota do podcast (P0-4) */
.refbar{background:var(--bg-2);border-bottom:1px solid var(--line,rgba(127,127,127,.18));font-size:.86rem;line-height:1.45;color:var(--ink-2)}
.refbar__in{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 14px;padding-block:8px;text-align:center}
.refbar p{margin:0;overflow-wrap:anywhere}.refbar strong{color:var(--ink)}
.refbar__x{background:none;border:0;padding:4px 2px;font:inherit;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.foot__doors{margin-top:14px;font-weight:600}.foot__doors a{text-decoration:underline;text-underline-offset:3px}
.foot__doors-note{margin-top:4px;font-size:.88rem;color:var(--ink-2)}
.pod__note{margin-top:12px;font-size:.88rem;color:var(--ink-2)}
.refnote .actions{gap:10px}

/* Rodapé */
.foot{padding-block:56px 36px;margin-top:0}
.foot__grid{display:grid;gap:40px}
@media (min-width:900px){.foot__grid{grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr))}}
.foot h2{font:500 .74rem/1.3 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2);margin-bottom:14px}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.foot a{text-decoration:none}
.foot a:hover{text-decoration:underline}
.foot__brand{display:grid;gap:16px;max-width:30ch;color:var(--ink-2)}
/* Celular: rodapé centralizado (Felipe, 27/10); a assinatura grande fecha a página */
@media (max-width:700px){.foot__grid,.foot__brand,.foot__end{text-align:center;justify-items:center}.foot__brand{margin-inline:auto}
  .foot ul{justify-items:center}.foot__end{flex-direction:column;align-items:center}}
.foot__end{margin-top:40px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:.85rem;color:var(--ink-2)}
.foot__end button{background:none;border:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer;padding:0}

/* Entrada suave: só melhoria, o conteúdo já nasce visível */
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){
  .rise{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}
}}
@keyframes rise{from{transform:translateY(24px)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@view-transition{navigation:auto}
@media print{.top,.foot,.cta,.player{display:none}}

/* Celular: topos, títulos de seção e chamadas centralizados (mais presença); texto corrido, listas e tabelas seguem à esquerda */
@media (max-width:700px){
  .hero__grid,.hero__side{text-align:center;justify-items:center}
  .hero .eyebrow,.page-hero .eyebrow,.head .eyebrow,.cta .eyebrow{justify-content:center}
  .hero .lead,.page-hero .lead,.head > p:not(.eyebrow){margin-inline:auto}
  .hero .actions,.page-hero .actions,.cta .actions{justify-content:center}
  .hero__meta{justify-content:center}
  .page-hero{text-align:center}
  .page-hero h1{margin-inline:auto}
  .crumbs{justify-content:center}
  .head{text-align:center;justify-items:center;margin-inline:auto}
  .cta{text-align:center;justify-items:center}
}
.crumbs{flex-wrap:nowrap;min-width:0}
.crumbs li{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
/* Karaokê da transcrição: dito em tinta, a palavra da vez com sublinhado ipê, o que falta em cinza */
.transcript div{position:relative;scroll-behavior:smooth}
.transcript .w{color:var(--ink-2);opacity:.55;cursor:pointer;border-radius:4px;transition:color .25s,opacity .25s,background-color .25s,box-shadow .25s}
.transcript .w.is-said{color:var(--ink);opacity:1}
.transcript .w.is-now{color:var(--ink);opacity:1;background:color-mix(in srgb,var(--ipe) 22%,transparent);box-shadow:0 2px 0 var(--ipe)}
.transcript .w:hover{opacity:1}
@media (prefers-reduced-motion:reduce){.transcript .w{transition:none}}
/* Barra de leitura e botão de subir */
.readbar{position:fixed;top:0;left:0;right:0;height:2px;z-index:1000;pointer-events:none;transform:scaleX(0);transform-origin:0 50%;
  background:linear-gradient(90deg,#D9A10E,#F2C94C 55%,#7FD3A6);will-change:transform}
.totop{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:900;width:48px;height:48px;padding:0;border:0;border-radius:50%;
  display:grid;place-items:center;cursor:pointer;color:var(--ink);background:color-mix(in srgb,var(--bg) 78%,transparent);
  -webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 10px 30px -12px rgba(13,22,36,.35);
  opacity:0;transform:translateY(12px) scale(.92);pointer-events:none;transition:opacity .35s var(--ease-out),transform .35s var(--ease-out)}
.totop.is-on{opacity:1;transform:none;pointer-events:auto}
.totop:hover{transform:translateY(-2px)}
.totop svg{width:48px;height:48px;overflow:visible}
.totop__track{fill:none;stroke:var(--line);stroke-width:1.5}
.totop__ring{fill:none;stroke:var(--ipe);stroke-width:2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transform:rotate(-90deg);transform-origin:24px 24px}
@media (max-width:700px){.totop{width:44px;height:44px}.totop svg{width:44px;height:44px}}
@media (prefers-reduced-motion:reduce){.totop{transition:opacity .2s}}

/* iPhone 3D da conversa de exemplo (27/10): moldura de titânio, Dynamic Island, WhatsApp de verdade (papel de parede, balões, ✓✓ azul).
   Inclinado em perspectiva; endireita ao passar o mouse no desktop */
.iph{position:relative;justify-self:center;width:min(100%,340px);perspective:1600px;--rx:6deg;--ry:-16deg}
.iph__body{position:relative;aspect-ratio:9/19.3;border-radius:54px;padding:11px;transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;
  background:linear-gradient(140deg,#8a8f98 0%,#3c4048 18%,#1d2026 46%,#4a4f58 78%,#9aa0a8 100%);
  box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.18),inset 0 0 0 4px #0b0d10,-28px 40px 60px -28px rgba(13,22,36,.55),0 2px 0 rgba(255,255,255,.08);
  transition:transform .9s var(--ease-out)}
@media (hover:hover) and (pointer:fine){.iph:hover{--rx:0deg;--ry:0deg}}
.iph__key{position:absolute;width:3px;border-radius:2px;background:linear-gradient(90deg,#2a2d33,#6b7079)}
.iph__key--a{left:-3px;top:19%;height:5%}
.iph__key--b{left:-3px;top:27%;height:9%}
.iph__key--c{right:-3px;top:24%;height:13%;background:linear-gradient(270deg,#2a2d33,#6b7079)}
.iph__screen{position:relative;height:100%;border-radius:44px;overflow:hidden;display:flex;flex-direction:column;background:#EFEAE2;color:#111B21;font-family:-apple-system,"SF Pro Text",var(--f-body)}
.iph__status{display:flex;align-items:center;justify-content:space-between;padding:14px 26px 6px;font:600 .82rem/1 -apple-system,"SF Pro Text",var(--f-body);background:#F7F7F7;fill:currentColor}
.iph__island{width:33%;height:26px;border-radius:20px;background:#000;box-shadow:inset 0 0 0 1px #1a1a1a}
.iph__sig{display:flex;gap:5px;align-items:center}
.wa__bar{display:flex;align-items:center;gap:9px;padding:8px 14px 10px;background:#F7F7F7;border-bottom:1px solid rgba(0,0,0,.08);color:#007AFF}
.wa__bar .phone__av{width:34px;height:34px;border-radius:50%;background:#132033;color:#F2C94C;display:grid;place-items:center;font:700 .85rem/1 var(--f-display);flex:none}
.wa__bar .phone__name{color:#111B21;font:600 .92rem/1.15 -apple-system,var(--f-body);flex:1;min-width:0}
.wa__bar .phone__name small{display:block;font:400 .72rem/1.3 -apple-system,var(--f-body);color:#667781}
.wa__icons{display:flex;gap:16px;color:#007AFF}
.wa__bg{flex:1;min-height:0;overflow:hidden;justify-content:flex-end;padding:12px 10px 8px;background-color:#EFEAE2;
  background-image:radial-gradient(rgba(17,27,33,.06) 1px,transparent 1.4px),radial-gradient(rgba(17,27,33,.04) 1px,transparent 1.4px);background-size:22px 22px,22px 22px;background-position:0 0,11px 11px}
.iph .msg{font:400 .86rem/1.38 -apple-system,"SF Pro Text",var(--f-body);padding:7px 10px 6px;border-radius:12px;box-shadow:0 1px .5px rgba(11,20,26,.13);max-width:82%}
.iph .msg--in{background:#fff;color:#111B21;border-top-left-radius:4px;border-bottom-left-radius:12px}
.iph .msg--out{background:#D9FDD3;color:#111B21;border-top-right-radius:4px;border-bottom-right-radius:12px}
.iph .msg time{display:inline-block;float:right;margin:6px 0 -2px 10px;font:400 .64rem/1 -apple-system,var(--f-body);color:#667781;opacity:1}
.iph .msg--out time::after{content:"";display:inline-block;width:15px;height:9px;margin-left:3px;vertical-align:-1px;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10'%3E%3Cpath d='M1 5.5l2.6 2.6L9.5 2M6.5 8.1l.5.5L13 2.5' fill='none' stroke='%2353BDEB' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.iph .msg--note{align-self:center;background:#FFF5C4;color:#54656F;font:500 .64rem/1.3 -apple-system,var(--f-body);letter-spacing:0;text-transform:none;border-radius:8px;padding:5px 9px;box-shadow:0 1px .5px rgba(11,20,26,.1)}
.iph .typing{background:#fff;align-self:flex-start;box-shadow:0 1px .5px rgba(11,20,26,.13)}
.iph .typing i{background:#8696A0}
.wa__input{display:flex;align-items:center;gap:10px;padding:8px 12px 26px;background:#F7F7F7;color:#007AFF}
.wa__plus{font:300 1.6rem/1 -apple-system,var(--f-body)}
.wa__field{flex:1;height:32px;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.08)}
.iph__home{position:absolute;left:50%;bottom:8px;width:36%;height:5px;border-radius:3px;background:#111;transform:translateX(-50%);opacity:.85}
.iph__glare{position:absolute;inset:11px;border-radius:44px;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,0) 28%,rgba(255,255,255,0) 70%,rgba(255,255,255,.06) 100%);mix-blend-mode:screen}
.iph__floor{position:absolute;left:12%;right:12%;bottom:-26px;height:30px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(13,22,36,.32),transparent 70%);filter:blur(6px);z-index:-1}
:root[data-theme="dark"] .iph__floor{background:radial-gradient(ellipse at center,rgba(0,0,0,.6),transparent 70%)}
@media (max-width:700px){.iph{width:min(86%,320px);--rx:3deg;--ry:-8deg}}
@media (prefers-reduced-motion:reduce){.iph__body{transform:none;transition:none}}

/* Gatilhos de preço: âncora riscada em vermelho, selo de desconto, Pix e parcelas; selo Recomendado no plano do meio */
.offer{display:grid;gap:10px;margin:6px 0 4px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);max-width:30rem}
.offer__old{display:flex;align-items:center;gap:10px;font:500 1rem/1 var(--f-mono);color:var(--ink-2)}
.offer__old s{text-decoration:none;position:relative}
.offer__old s::after{content:"";position:absolute;left:-3px;right:-3px;top:50%;height:2px;background:#D64545;transform:rotate(-8deg)}
.offer__off{font:600 .74rem/1 var(--f-mono);letter-spacing:.04em;color:#fff;background:#D64545;padding:5px 8px;border-radius:999px}
.offer .price{font-size:clamp(2.6rem,4vw,3.4rem)}
.offer__pay,.plan__pay{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:.95rem;color:var(--ink-2)}
.offer__pay strong{color:var(--ink)}
.pay{display:inline-flex;align-items:center;gap:6px;font:600 .72rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:#0B7A6B;background:color-mix(in srgb,#32BCAD 16%,transparent);padding:5px 9px;border-radius:999px}
.pay::before{content:"";width:8px;height:8px;background:#32BCAD;transform:rotate(45deg);border-radius:2px}
:root[data-theme="dark"] .pay{color:#7FE0D3}
.plan__pay{margin-top:-8px}
.plan__badge{align-self:flex-start;font:600 .72rem/1 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:#132033;background:var(--ipe);padding:7px 11px;border-radius:999px;margin-bottom:-6px}
@media (min-width:960px){.plan--mid{box-shadow:0 0 0 2px var(--ipe) inset;border-radius:4px}}

/* As quatro frentes da home (27/10): foto, número, título e texto, em cartões que crescem no hover */
.fronts{list-style:none;margin:0;padding:0;display:grid;gap:22px}
@media (min-width:600px){.fronts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.fronts{grid-template-columns:repeat(4,minmax(0,1fr))}}
.front a{display:flex;flex-direction:column;gap:12px;height:100%;text-decoration:none;color:inherit}
.front__ph{margin:0 0 6px;border-radius:var(--radius);overflow:hidden;background:var(--bg-2)}
.front__ph img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .9s var(--ease-out)}
.front a:hover .front__ph img{transform:scale(1.04)}
.front h3{font-size:clamp(1.3rem,1.8vw,1.55rem);line-height:1.15}
.front p{color:var(--ink-2);font-size:.98rem}
.front .row__go{margin-top:auto}

.plan--mid .plan__badge{position:absolute;top:-13px;left:32px;margin:0}

#exemplo{overflow-x:clip}
@media (max-width:380px){.hero .eyebrow{letter-spacing:.03em;font-size:.7rem}}

@media (max-width:420px){.player{padding:16px}.tabs{max-width:100%}.tab{padding:9px 10px;letter-spacing:.02em;font-size:.76rem}}

/* Celular: frentes e planos viram carrossel de deslizar (o próximo cartão aparece na borda) */
@media (max-width:700px){
  .fronts,.plans{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:84%;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);margin-inline:calc(-1 * var(--gutter));padding:4px var(--gutter) 18px;scrollbar-width:none}
  .fronts::-webkit-scrollbar,.plans::-webkit-scrollbar{display:none}
  .fronts > *,.plans > *{scroll-snap-align:start}
  .plans{grid-auto-columns:88%;padding-top:18px}
  .front .row__n,.front h3,.front p,.front .row__go{text-align:left}
}


/* ---------- Biblioteca (28/10): acervo filtrável, resumo no topo, painel de exemplo, situações, guias e glossário ---------- */
.lib-hero .lead{max-width:52ch}
.lib-top{padding-top:0}
.byline{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:22px;font:500 .78rem/1.4 var(--f-mono);letter-spacing:.04em;color:var(--ink-2)}
.byline span + span::before{content:"·";margin-right:18px;opacity:.6}
.lib-why{padding:clamp(24px,3vw,40px);border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}
.lib-bar{margin-bottom:clamp(22px,3vw,36px)}
.lib-f{margin-top:0}
.chip__n{font:500 .72rem/1 var(--f-mono);opacity:.6;margin-left:4px}
.lib{list-style:none;margin:0;padding:0;display:grid;gap:16px;grid-template-columns:repeat(12,minmax(0,1fr))}
.lib__card{grid-column:span 12}
.lib__card[hidden]{display:none}
.lib__card > a{position:relative;height:100%;display:flex;flex-direction:column;gap:12px;padding:clamp(22px,2.4vw,30px);border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);color:inherit;text-decoration:none;
  transition:border-color .3s,transform .5s var(--ease-spring),box-shadow .5s var(--ease-out)}
.lib__card > a:hover{border-color:var(--ink);transform:translateY(-3px);box-shadow:0 18px 40px -28px rgba(19,32,51,.45)}
.lib__card > a:hover .arr{transform:translateX(5px)}
.lib__k{font:500 .74rem/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);padding-right:40px}
.lib__card[data-k="guia"] .lib__k::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ipe);margin-right:8px;vertical-align:1px}
.lib__n{position:absolute;top:clamp(20px,2.2vw,28px);right:clamp(20px,2.2vw,28px);font:500 .78rem/1 var(--f-mono);color:var(--ink-2);opacity:.55}
.lib__card h3{font-size:clamp(1.2rem,1.6vw,1.4rem);line-height:1.2}
.lib__card p{color:var(--ink-2);font-size:.98rem}
.lib__card .row__go{margin-top:auto;padding-top:8px}
.lib__card--pod > a{padding:0;overflow:hidden;display:grid;background:var(--night);color:var(--on-night);border-color:transparent}
.lib__card--pod .lib__k,.lib__card--pod p{color:var(--on-night);opacity:.8}
.lib__card--pod .lib__tx{display:flex;flex-direction:column;gap:12px;padding:clamp(24px,3vw,44px);align-self:center}
.lib__card--pod h3{font-size:clamp(1.5rem,2.6vw,2.2rem)}
.lib__ph{margin:0}
.lib__ph img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/10;display:block}
@media (min-width:640px){.lib__card[data-k="area"],.lib__card[data-k="guia"]{grid-column:span 6}.lib__card[data-k="guia"]:last-child{grid-column:span 12}}
@media (min-width:860px){.lib__card--pod > a{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.lib__ph img{aspect-ratio:auto;min-height:320px}}
@media (min-width:1100px){.lib__card[data-k="area"]{grid-column:span 3}.lib__card[data-k="guia"],.lib__card[data-k="guia"]:last-child{grid-column:span 4}}
.lib-note{margin-top:22px;color:var(--ink-2)}
.lib-all{margin-top:28px}

.tldr{padding:clamp(24px,3vw,40px);border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:inset 3px 0 0 var(--ipe)}
.tldr__k{font:500 .74rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin-bottom:14px}
.tldr p:last-child{font-size:clamp(1.08rem,1.5vw,1.25rem);line-height:1.6;max-width:60ch}
.lib-split{display:grid;gap:clamp(24px,4vw,56px);align-items:center}
@media (min-width:960px){.lib-split{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}}
.lib-narrow{max-width:62rem}

.mock{margin:0;border-radius:18px;background:var(--night);color:var(--on-night);border:1px solid var(--line);box-shadow:0 30px 60px -40px rgba(19,32,51,.6);overflow:hidden}
.mock__bar{display:flex;align-items:center;gap:10px;padding:14px 18px;font:500 .78rem/1 var(--f-mono);letter-spacing:.04em;border-bottom:1px solid rgba(238,240,238,.1)}
.mock__live{width:8px;height:8px;border-radius:50%;background:#46C37B;animation:libLive 2.4s infinite}
.mock__tag{margin-left:auto;opacity:.55;text-transform:uppercase;font-size:.66rem;letter-spacing:.08em}
.mock__log{list-style:none;margin:0;padding:10px 18px 18px;display:grid;gap:4px}
.mock__log li{display:grid;grid-template-columns:52px 1fr;gap:12px;padding:9px 0;font-size:.95rem;line-height:1.45}
.mock__log time{font:500 .78rem/1.8 var(--f-mono);opacity:.55}
.mock__log li.is-alert{margin-top:8px;padding:12px 14px 12px 0;border-radius:12px;background:rgba(227,174,31,.14);color:#F4D27A;font-weight:600}
.mock__ping{justify-self:center;align-self:center;width:10px;height:10px;border-radius:50%;background:var(--ipe);animation:libLive 1.8s infinite}
@keyframes libLive{0%{box-shadow:0 0 0 0 rgba(227,174,31,.45)}70%{box-shadow:0 0 0 10px rgba(227,174,31,0)}100%{box-shadow:0 0 0 0 rgba(227,174,31,0)}}
.js-lib .mock__log li{opacity:0;transform:translateY(6px)}
.js-lib .mock.is-in .mock__log li{animation:libIn .6s var(--ease-out) forwards}
.js-lib .mock.is-in .mock__log li:nth-child(2){animation-delay:.45s}
.js-lib .mock.is-in .mock__log li:nth-child(3){animation-delay:.9s}
.js-lib .mock.is-in .mock__log li:nth-child(4){animation-delay:1.35s}
.js-lib .mock.is-in .mock__log li:nth-child(5){animation-delay:1.9s}
@keyframes libIn{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.mock__live,.mock__ping{animation:none}.js-lib .mock__log li{opacity:1;transform:none;animation:none!important}}

.cases{list-style:none;margin:0;padding:0;display:grid;gap:16px}
@media (min-width:900px){.cases{grid-template-columns:repeat(3,minmax(0,1fr))}}
.case{display:flex;flex-direction:column;gap:14px;padding:clamp(22px,2.4vw,30px);border-radius:var(--radius);background:var(--surface)}
.case h3{font-size:1.25rem}
.case p{display:grid;gap:6px;font-size:.98rem}
.case p span{font:500 .7rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.case__no{color:var(--ink-2)}
.case__yes{margin-top:auto;padding:14px 16px;border-radius:10px;background:var(--bg)}
.case__yes span{color:var(--ok)}

.lib-two{display:grid;gap:clamp(32px,5vw,72px)}
@media (min-width:860px){.lib-two{grid-template-columns:repeat(2,minmax(0,1fr))}}
.lib-h{font-size:clamp(1.35rem,2vw,1.7rem);margin-bottom:20px}
.lib-p{color:var(--ink-2);max-width:52ch;margin-bottom:22px}
.lib-cost{display:grid;gap:24px;align-items:center}
@media (min-width:860px){.lib-cost{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:64px}}
.lib-cost p{color:var(--ink-2);max-width:52ch}
.lib-cost .actions{margin-top:22px}
.lib-cost .lib-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:12px;color:var(--ink)}
.lib-price strong{font:800 clamp(1.8rem,3vw,2.5rem)/1 var(--f-display);font-stretch:105%;letter-spacing:-.02em}
.lib-price span{font:500 .8rem/1 var(--f-mono);color:var(--ink-2)}

.gsteps{list-style:none;margin:0;padding:0;display:grid;gap:14px;max-width:62rem}
.gstep{display:grid;grid-template-columns:52px 1fr;gap:18px;padding:clamp(20px,2.4vw,28px);border-radius:var(--radius);background:var(--surface)}
.gstep__n{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font:500 .8rem/1 var(--f-mono);border:1px solid var(--line)}
.gstep h3{font-size:1.2rem;margin-bottom:8px}
.gstep p{color:var(--ink-2)}
.terms{margin:0;display:grid;gap:14px}
@media (min-width:860px){.terms{grid-template-columns:repeat(2,minmax(0,1fr))}}
.term{padding:clamp(20px,2.4vw,28px);border-radius:var(--radius);background:var(--surface);scroll-margin-top:100px}
.term dt{font:700 1.15rem/1.25 var(--f-display);font-stretch:105%;margin-bottom:8px}
.term dd{margin:0;color:var(--ink-2)}
.lib-pod{padding-top:0}

@media (max-width:700px){
  .byline{justify-content:center}
  .lib-why{text-align:center}
  .lib-f{justify-content:center}
  .lib-all,.lib-note{text-align:center}
  .lib-two > div,.lib-cost > div{text-align:center}
  .lib-two .ticks{text-align:left;max-width:30rem;margin-inline:auto}
  .lib-cost .lib-price,.lib-cost .actions,.lib-two .actions{justify-content:center}
  .lib-cost p,.lib-p{margin-inline:auto}
  .lib-cost .eyebrow{justify-content:center}
}
@media (min-width:981px) and (max-width:1200px){.nav{gap:0}.nav a{padding:10px 8px;font-size:.9rem}}
@media (min-width:860px){.lib-rel .row a{grid-template-columns:10rem minmax(0,1fr) minmax(0,1fr) 6rem}}
/* Topo da home (28/10, Felipe): o letreiro fica em cima do vídeo e é a última coisa da primeira tela, inteiro.
   O site.js empurra o letreiro para o pé da tela quando sobra espaço (--hero-fill). */
@font-face{font-family:"Plus Jakarta Sans";src:url(fonts/plus-jakarta-sans-normal-latin.woff2) format("woff2");font-weight:200 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Plus Jakarta Sans";src:url(fonts/plus-jakarta-sans-normal-latin-ext.woff2) format("woff2");font-weight:200 800;font-display:swap;unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
.hero{padding-bottom:0}
/* a sobra da primeira tela (--hero-fill) é dividida entre os respiros acima do letreiro, sem mexer na posição dele */
.hero{padding-top:calc(4px + var(--hero-fill,0px) * .2)}
.hero--b{padding-top:calc(clamp(16px,2vw,28px) + var(--hero-fill,0px) * .3);padding-bottom:calc(clamp(10px,1.4vw,18px) + var(--hero-fill,0px) * .2 + var(--hero-fix,0px))}
.hero--b .hero__side{row-gap:calc(20px + var(--hero-fill,0px) * .15)}
main .hero--b + .marquee{padding-block:clamp(10px,1.2vw,16px) clamp(12px,1.4vw,18px);-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
@media (max-width:700px){.hero__grid{row-gap:20px}.hero--b .hero__side{row-gap:calc(14px + var(--hero-fill,0px) * .15)}.hero .actions{row-gap:14px}}
@media (min-width:900px){.hero__grid{row-gap:30px}}
/* telas baixas: o topo encolhe um pouco para o letreiro caber inteiro na primeira tela */
@media (min-width:900px) and (max-height:780px){.hero h1{font-size:clamp(2.4rem,4.6vw,4rem)}.hero__grid{row-gap:22px}.hero{padding-top:calc(var(--hero-fill,0px) * .2)}}
@media (max-width:700px) and (max-height:645px){.hero h1{font-size:clamp(2rem,9vw,2.5rem)}.hero .lead{font-size:1rem;line-height:1.5}.hero__grid{row-gap:14px}.hero--b .hero__side{gap:12px}.hero .actions{row-gap:12px}}
.foot__ico{display:inline-flex;line-height:0}
/* Menu do celular (Felipe, 28/10): Diagnóstico grátis no tamanho de botão normal e Entrar logo abaixo, mesmo estilo, em azul */
@media (max-width:980px){
  .nav a.btn{font:600 1rem/1 var(--f-body);font-stretch:100%;min-height:52px;padding:0 24px;border-radius:999px;border-bottom:0;margin:28px 0 0;order:1}
  .nav a.btn--primary{color:var(--on-ipe)}
  .nav a.nav__login{order:2;display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:52px;margin-top:12px;padding:0 24px;border:0;border-radius:999px;
    font:600 1rem/1 var(--f-body);font-stretch:100%;letter-spacing:0;background:var(--blue);color:var(--on-blue);text-decoration:none}
  .nav a.nav__login:hover{filter:brightness(1.08)}
}
:root{--blue:#2E5B8A;--on-blue:#FFFFFF}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--blue:#9EC1E6;--on-blue:#0D1624}}
:root[data-theme="dark"]{--blue:#9EC1E6;--on-blue:#0D1624}
/* Respiros (Felipe, 28/10): menos vão entre seções; duas seções seguidas com o mesmo fundo não somam o respiro */
:root{--space-section:clamp(44px,5.2vw,76px)}
.section:not(.section--tint):not(.section--night) + .section:not(.section--tint):not(.section--night),
.section--tint + .section--tint{padding-top:0}
.hero--b + .section,.hero--b + .photo--band + .section{padding-top:var(--space-section)}
/* Celular: títulos e textos de abertura centralizados em todas as páginas; listas, perguntas e cartões seguem à esquerda */
@media (max-width:700px){
  .prose,.split > div:not(.faq):not(.tldr),.lib-cost > div,.fact,.qa,.refnote,.offer{text-align:center}
  .prose .eyebrow,.split .eyebrow,.lib-cost .eyebrow{justify-content:center}
  .prose,.prose p{margin-inline:auto}
  .prose .actions,.split .actions,.offer .actions{justify-content:center}
  .prose ul,.ticks,.rows,.faq,.cases,.gsteps,.terms,.plans,.cards,.scope{text-align:left}
  .ticks{max-width:30rem;margin-inline:auto}
}

/* Tabela de preços dos projetos avulsos (28/10) */
.precos{width:100%;border-collapse:collapse;max-width:62rem}
.precos tr{border-bottom:1px solid var(--line)}
.precos th{text-align:left;font:700 1.05rem/1.3 var(--f-display);font-stretch:105%;padding:18px 24px 18px 0;vertical-align:top}
.precos th span{display:block;margin-top:6px;font:400 .95rem/1.5 var(--f-body);color:var(--ink-2)}
.precos td{text-align:right;white-space:nowrap;padding:18px 0;vertical-align:top;font:700 1.15rem/1.2 var(--f-display);font-stretch:105%}
.precos td small{display:block;font:500 .72rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin-bottom:6px}
@media (max-width:700px){.precos th{padding-right:14px;font-size:1rem}.precos td{font-size:1.02rem}}
.table-wrap .precos{min-width:0;table-layout:auto}
.precos th,.precos th span{white-space:normal}
@media (max-width:700px){
  .precos,.precos tbody{display:block}
  .precos tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;padding:16px 0}
  .precos th{padding:0}
  .precos td{padding:0;text-align:right}
}
.precos th,.precos td{border-bottom:0}
/* Exemplo do WhatsApp (Felipe, 28/10): iPhone de frente, sem inclinação, menor e sem vão no topo da conversa;
   balões com quebra natural de linha; no celular, título, perguntas e aviso centralizados */
.iph,.iph:hover{--rx:0deg;--ry:0deg;width:min(100%,300px)}
.iph__body{aspect-ratio:9/17.5;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.18),inset 0 0 0 4px #0b0d10,0 30px 60px -30px rgba(13,22,36,.5),0 2px 0 rgba(255,255,255,.08)}
.iph .wa__bg{justify-content:flex-start;overflow-y:auto;scrollbar-width:none}
.iph .wa__bg::-webkit-scrollbar{display:none}
.iph .msg{text-wrap:wrap;width:fit-content}
.iph__floor{left:18%;right:18%}
@media (max-width:700px){
  .iph,.iph:hover{--rx:0deg;--ry:0deg;width:min(78%,290px)}
  .demo > div:first-child{text-align:center}
  .demo .eyebrow{justify-content:center}
  .demo .lead{margin-inline:auto}
  .demo .chips{justify-content:center}
  .demo .chip{white-space:nowrap}
}
/* Planos na home (Felipe, 28/10): cartão compacto; o que entra fica em "Ver o que entra" */
.plan__more{margin-top:4px}
.plan__more summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font:600 .92rem/1 var(--f-body);color:var(--ink);padding:10px 0}
.plan__more summary::-webkit-details-marker{display:none}
.plan__more summary::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .35s var(--ease-spring)}
.plan__more[open] summary::after{transform:rotate(225deg) translateY(-1px)}
.plan__more[open] .plan__for{margin:6px 0 14px}
.alem-ph{margin:0 0 clamp(24px,3vw,40px)}
.alem-ph img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius)}

/* Peixe com barbatana de tubarão (28/10): o vídeo fica preso na tela e avança com a rolagem */
.peixe{position:relative;height:260vh;background:var(--night)}
.peixe__stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:grid;place-items:center}
.peixe__v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.peixe__t{position:relative;z-index:1;align-self:end;margin:0 var(--gutter) clamp(28px,6vh,64px);max-width:22ch;text-align:center;font:700 clamp(1.5rem,3.4vw,2.8rem)/1.12 var(--f-display);font-stretch:105%;color:#EEF0EE;text-wrap:balance;opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);text-shadow:0 2px 24px rgba(0,0,0,.45)}
.peixe.is-end .peixe__t{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.peixe{height:auto}.peixe__stage{position:relative;height:auto;aspect-ratio:16/9}.peixe__t{opacity:1;transform:none}}
/* "Fica fora da mensalidade" (Felipe, 28/10): caixa limpa com a lista e dois botões, no lugar do parágrafo com links sublinhados */
.extra{margin-top:28px;display:grid;gap:18px;align-items:center;max-width:62rem}
@media (min-width:860px){.extra{grid-template-columns:minmax(0,1fr) auto;gap:32px}}
.fora{padding:20px 24px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}
.fora__k{font:500 .74rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin-bottom:12px}
.fora__l{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.95rem;color:var(--ink)}
.fora__l li{display:grid;grid-template-columns:14px 1fr;gap:10px}
.fora__l li::before{content:"";width:10px;height:0;border-bottom:2px solid var(--ink-2);margin-top:.7em}
.extra__go{display:flex;flex-wrap:wrap;gap:12px}
@media (min-width:860px){.extra__go{flex-direction:column;align-items:stretch}.extra__go .btn{justify-content:space-between}}
.extra__note{color:var(--ink-2);font-size:.95rem;max-width:46ch}
@media (max-width:700px){.fora{text-align:left}.fora__k{text-align:center}.extra__go{justify-content:center}.extra__note{text-align:center;margin-inline:auto}}
/* Respiro entre o letreiro e o vídeo igual ao respiro acima de "O que a gente faz" (Felipe, 28/10) */
main .hero--b + .marquee{padding-bottom:clamp(8px,1vw,12px)}
.marquee + .photo--band{margin-top:calc(var(--space-section) - clamp(8px,1vw,12px))}
/* Celular (Felipe, 28/10): mais respiro em volta do botão de diagnóstico; o letreiro continua no pé da primeira tela */
@media (max-width:700px){
  .hero--b .hero__side .actions{margin-top:12px;row-gap:20px}
  .hero__grid{row-gap:14px}
}
/* Link do diagnóstico logo abaixo do player, como o episódio promete (28/10) */
.pod__cta{margin-top:14px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;font-size:.95rem}
.pod__cta span{font:500 .74rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
@media (max-width:700px){.pod__cta{justify-content:center}}
/* Pix legível no escuro do sistema */
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pay{color:#7FE0D3}}
/* Tabela de preços (Felipe, 28/10): nada encosta na borda do cartão; no celular o preço vai para baixo do título, na largura toda */
.precos th{padding:18px 24px}
.precos td{padding:18px 24px}
@media (max-width:700px){
  .precos tr{display:block;padding:16px 18px}
  .precos th{display:block;padding:0}
  .precos td{display:flex;align-items:baseline;gap:8px;padding:10px 0 0;text-align:left;white-space:normal}
  .precos td small{display:inline;margin:0}
}
.precos th span{text-wrap:pretty}

/* capítulos do podcast dentro de um "Ver os capítulos", igual à transcrição (Felipe 28/10) */
.pod-caps{padding-top:10px}.pod-caps summary{cursor:pointer;font-weight:600}.pod-caps .chapters{margin-top:12px}

/* Home no computador (Felipe, 28/10, "toda ruim") */
/* respiro entre seções menor no computador; celular segue igual */
@media (min-width:900px){:root{--space-section:clamp(44px,4.2vw,64px)}}
/* topo: texto e botões alinhados à esquerda, embaixo do título, sem o vão à esquerda */
@media (min-width:900px){.hero__side{justify-self:start;max-width:36rem}}
/* filme da home em tela cheia, com degradê em cima e embaixo para se fundir no fundo */
@media (min-width:900px){
  .has-video .band__media{max-width:none;background:transparent}
  .has-video .band__media::before,.has-video .band__media::after{content:"";position:absolute;left:0;right:0;z-index:1;pointer-events:none}
  .has-video .band__media::before{top:0;height:clamp(70px,9vw,150px);background:linear-gradient(var(--bg),transparent)}
  .has-video .band__media::after{bottom:0;height:clamp(50px,6vw,100px);background:linear-gradient(transparent,var(--bg))}
}
/* "Além das empresas" não fica colada no podcast */
#podcast + .section--tint{padding-top:var(--space-section)}
/* bloco final centralizado no computador */
@media (min-width:900px){.cta{grid-template-columns:1fr;justify-items:center;text-align:center;gap:20px}.cta .actions{justify-content:center}.cta__side{justify-items:center}.cta__side .lead{max-width:36rem}}
/* cards de planos da home: mais justos e com o selo inteiro */
.plan--mid{overflow:visible}
@media (min-width:960px){#planos .plan{padding:28px 28px 26px;gap:14px}#planos .plan__more summary{padding:4px 0}}
/* rodapé: logo, texto e botão juntos no topo da coluna, sem os vãos esticados */
.foot__brand{align-content:start;align-self:start}
.foot__brand .btn{justify-self:start}
@media (max-width:700px){.foot__brand .btn{justify-self:center}}
/* rodapé com as colunas em menu: título + setinha, sem divisória (Felipe, 28/10) */
.foot__col summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;padding:4px 0;-webkit-tap-highlight-color:transparent}
.foot__col summary::-webkit-details-marker{display:none}
.foot__col summary h2{margin:0}
.foot__col summary::after{content:"";width:7px;height:7px;border-right:1.5px solid var(--ink-2);border-bottom:1.5px solid var(--ink-2);transform:rotate(45deg) translateY(-3px);transition:transform .3s var(--ease-out)}
.foot__col[open] summary::after{transform:rotate(225deg) translateY(-1px)}
.foot__col summary:hover h2{color:var(--ink)}
.foot__col ul{margin-top:12px}
.foot__col summary:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:4px}
@media (min-width:900px){.foot__grid{align-items:start}}
@media (max-width:700px){.foot__grid{gap:18px}.foot__col{text-align:center}}

/* ---------- Planos e preços (29/10): cards empilhados no celular, Pix com desconto, contrato mínimo, diagnóstico como botão principal ---------- */
@media (max-width:700px){
  .plans.plans--stack{grid-auto-flow:row;grid-template-columns:minmax(0,1fr);grid-auto-columns:auto;gap:30px;overflow:visible;scroll-snap-type:none;margin-inline:0;padding:14px 0 0}
}
.plan__pix{margin-top:-8px;display:grid;gap:2px;font-size:.95rem;line-height:1.45;color:var(--ink-2)}
.plan__pix strong{color:var(--ink);font-weight:600}
.offer__card{font-size:.95rem;color:var(--ink-2)}
.offer__pix{font-size:1rem;font-weight:600;color:var(--ink)}
.plan .plan__go{align-self:stretch;justify-content:center;margin-top:8px}
.plan__mail{margin-top:-10px;text-align:center;font-size:.92rem}
.plan__mail .link{font-weight:500;color:var(--ink-2)}
.plan__terms{margin-top:2px;padding-top:14px;border-top:1px solid var(--line);font-size:.82rem;line-height:1.5;color:var(--ink-2)}
@media (min-width:860px){.extra--2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;max-width:none}}
.prazo__ideal{margin-top:14px;font-size:.95rem;font-weight:600;color:var(--ink)}
.card .card__price{font:700 1.45rem/1.15 var(--f-display);letter-spacing:-.01em;color:var(--ink)}
.card .card__price small{display:block;margin-bottom:4px;font:500 .74rem/1 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}
/* Nada sai da tela no celular (Felipe, 29/10): chip longo quebra em 2 linhas em vez de passar da borda; range da calculadora sem a margem padrão do navegador */
@media (max-width:480px){
  .chip,.demo .chip{white-space:normal;max-width:100%;text-wrap:balance;text-align:center}
  .calc__form input[type=range]{margin-inline:0;min-width:0;max-width:100%}
}

/* Condição de fundador abaixo dos planos (29/10/2026): mesmo selo dos planos, sem cor nova */
.founder{max-width:none;margin-top:24px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius)}
.founder .plan__badge{justify-self:start;margin:0 0 4px}
.founder p{margin:0}

/* Plano Individual (30/10/2026): seção à parte, abaixo dos planos para empresa, para ficar claro que é outro público */
.solo{display:grid;gap:28px;align-items:start;padding-top:8px;border-top:1px solid var(--line)}
@media (min-width:960px){.solo{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;padding-top:40px}}
.solo__txt .fine{margin-top:12px}
.solo__plan{max-width:34rem}
.solo__plan .fine{margin:-6px 0 0;font-size:.85rem;color:var(--ink-2)}
.solo__home{margin-top:22px;font-size:.98rem;color:var(--ink-2)}
.solo__home .link{font-weight:600}

/* Podcast de cada artigo (29/10/2026): mesmo player da home, abaixo do resumo */
.art-pod{margin:28px 0 36px}
.art-pod__k{font:600 .74rem/1.2 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2);margin:0 0 10px}

/* Fotos e elementos interativos dentro dos guias de IA por ramo (Felipe, 29/10/2026).
   Marcação em src/artigos_widgets.py e em novas.inline_extras; conta em site.js (data-aw). Só cores já existentes. */
.art-fig{margin:12px 0;display:grid;gap:10px}
.art-fig img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);background:var(--bg-2)}
.art-fig figcaption{font-size:.92rem;line-height:1.5;color:var(--ink-2);text-wrap:pretty}
.aw{margin:12px 0;padding:clamp(18px,3vw,28px);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);display:grid;gap:14px;color:var(--ink);min-width:0;font-size:1rem;line-height:1.5}
.aw [hidden]{display:none!important}
.aw p{margin:0}
.aw__k{font:600 .74rem/1.2 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}
.aw__t{font:700 clamp(1.12rem,2.2vw,1.3rem)/1.25 var(--f-display);color:var(--ink);text-wrap:balance}
.aw__d{font-size:.95rem;color:var(--ink-2)}
.aw__note{font-size:.84rem;color:var(--ink-2);border-top:1px solid var(--line);padding-top:12px}
.aw__f{display:grid;gap:14px;min-width:0}
@media (min-width:640px){.aw__f{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}}
.aw__i{display:grid;gap:6px;min-width:0}
.aw__l{font-size:.9rem;line-height:1.35;color:var(--ink-2)}
.aw__in{display:flex;align-items:center;gap:8px;min-width:0;min-height:48px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg)}
.aw__in:focus-within{outline:2px solid var(--focus);outline-offset:2px}
.aw__in input{flex:1;min-width:0;width:100%;border:0;background:transparent;color:var(--ink);font:500 1.05rem/1.2 var(--f-body);padding:11px 0;outline:none;-moz-appearance:textfield;appearance:textfield}
.aw__in input::-webkit-outer-spin-button,.aw__in input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.aw__in input::placeholder{color:var(--ink-2);opacity:.75}
.aw__u{font:500 .88rem/1 var(--f-mono);color:var(--ink-2);flex:none}
.aw__set{border:0;padding:0;margin:0;min-width:0;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.aw__set legend{padding:0;margin-bottom:8px;font-weight:600;font-size:.92rem;color:var(--ink)}
.aw__f>.aw__set{grid-column:1/-1}
.aw__out{display:grid;gap:12px;padding:16px;border-radius:10px;background:var(--bg-2);min-width:0}
.aw__big{display:grid;gap:2px}
.aw__bl{font-size:.9rem;color:var(--ink-2)}
.aw__big b{font:800 clamp(1.6rem,4.6vw,2.2rem)/1.1 var(--f-display);color:var(--ink);letter-spacing:-.01em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.aw__big small{font-size:.86rem;color:var(--ink-2)}
.art .aw ul,.art .aw ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.art .aw li::marker{content:none}
.aw__list li{display:flex;justify-content:space-between;align-items:baseline;gap:6px 14px;flex-wrap:wrap;padding-top:8px;border-top:1px solid var(--line);font-size:.95rem;color:var(--ink-2)}
.aw__list li:first-child{border-top:0;padding-top:0}
.aw__list b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}
.aw__need,.aw__flag{font-size:.95rem;color:var(--ink)}
.aw__flag b{font-weight:700}
.aw__chart{display:block;width:100%;height:auto;max-width:520px;overflow:visible}
.aw__chart .aw-a{fill:var(--ipe)}
.aw__chart .aw-b{fill:var(--ink-2);opacity:.55}
.aw__chart .aw-tx{fill:var(--ink-2);font:500 13px/1 var(--f-body)}
.aw__chart .aw-tx--v{fill:var(--ink);font-weight:600}
.aw__chart .aw-gl{stroke:var(--line);stroke-width:1.5}
.aw__chart .aw-ref{stroke:var(--ink-2);stroke-width:1.2;stroke-dasharray:4 4}
.aw__chart .aw-ln{fill:none;stroke:var(--ipe);stroke-width:3;stroke-linecap:round}
.aw__chart .aw-ln--b{stroke:var(--ink-2)}
.aw__chart .aw-dot{fill:var(--ipe);stroke:var(--surface);stroke-width:2}
.aw__chart .aw-dot--b{fill:var(--ink-2)}
.aw__chart--ring{max-width:120px;flex:none}
.aw__chart .aw-ring{fill:none;stroke:var(--line);stroke-width:12}
.aw__chart .aw-ring--on{stroke:var(--ipe);stroke-linecap:round}
.aw__ring{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.aw__ring .aw__chart--ring{width:96px}
.aw__legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:.86rem;color:var(--ink-2)}
.aw__sw{display:inline-block;width:18px;height:3px;border-radius:2px;margin-right:-8px}
.aw__sw--a{background:var(--ipe)}
.aw__sw--b{background:var(--ink-2)}
/* lista para marcar */
.aw__checks label{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);cursor:pointer;font-size:.98rem;color:var(--ink)}
.aw__checks input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:var(--ipe)}
.aw__checks input:checked+span{color:var(--ink-2);text-decoration:line-through;text-decoration-color:var(--ipe)}
.aw__checks label:focus-within{outline:2px solid var(--focus);outline-offset:2px}
.aw__prog{font-size:.95rem;color:var(--ink-2)}
.aw__prog b{color:var(--ink);font-weight:700}
.aw__bar{height:8px;border-radius:99px;background:var(--line);overflow:hidden}
.aw__bar i{display:block;height:100%;background:var(--ipe);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease-out)}
.aw__done{font-weight:600}
/* calendário de cobrança */
.aw__steps li{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:baseline;font-size:.95rem;color:var(--ink-2)}
.aw__day{font:600 .8rem/1.4 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink);min-width:6.5ch}
.aw__chart--track{max-width:none}
/* ilustração do Perfil da Empresa no Google */
.aw__mapgrid{display:grid;gap:16px;min-width:0}
@media (min-width:700px){.aw__mapgrid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start}}
.aw__map{display:block;width:100%;height:auto}
.aw__map .m-bg{fill:var(--bg-2)}
.aw__map .m-rd{fill:none;stroke:var(--surface);stroke-width:9;stroke-linecap:round}
.aw__map .m-rd--s{stroke-width:5}
.aw__map .m-gr{fill:var(--ok);opacity:.18}
.aw__map .m-pin path{fill:var(--ipe)}
.aw__map .m-pin circle{fill:var(--surface)}
.aw__map .m-card{fill:var(--surface);stroke:var(--line)}
.aw__map .m-h{fill:var(--ink);font:700 18px/1 var(--f-display)}
.aw__map .m-s{fill:var(--ink-2);font:500 13px/1 var(--f-body)}
.aw__map .m-st{fill:var(--ipe);font:500 13px/1 var(--f-body);letter-spacing:1px}
.aw__map .m-btn{fill:none;stroke:var(--line);stroke-width:1.5}
.aw__map .m-b{fill:var(--link);font:600 12px/1 var(--f-body);text-anchor:middle}
.aw__map .m-ph{fill:var(--bg-2)}
.aw__map .m-num circle{fill:var(--ink)}
.aw__map .m-num text{fill:var(--surface);font:700 11px/1 var(--f-body);text-anchor:middle}
.aw__map [data-p]{transition:opacity .25s}
.aw.is-pick .aw__map [data-p]:not(.is-on){opacity:.25}
.aw__parts button{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink-2);font:inherit;font-size:.93rem;line-height:1.45;cursor:pointer}
.aw__parts button b{color:var(--ink);font-weight:600;display:block}
.aw__parts button[aria-pressed="true"]{border-color:var(--ipe);background:var(--surface)}
.aw__parts button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.aw__n{flex:none;display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--surface);font:700 .78rem/1 var(--f-body)}
@media (prefers-reduced-motion:reduce){.aw__bar i,.aw__map [data-p]{transition:none}}

/* 29/10: razão social e CNPJ no rodapé; no celular cada parte numa linha, sem o ponto */
.foot__legal span{white-space:nowrap}
@media (max-width:480px){.foot__legal span{display:block}.foot__legal .foot__sep{display:none}}
/* 30/10 card do plano: resumo e botão sem espremer no celular */
.plan__more summary{display:flex;justify-content:space-between;align-items:center;gap:16px;line-height:1.3}
.plan__more-t{display:block;min-width:0}
.plan__more-t small{display:block;margin-top:3px;font:400 .84rem/1.35 var(--f-body);opacity:.72}
.plan__more summary::after{flex:none}
.plan .plan__go{white-space:normal;text-align:center;line-height:1.25;padding:12px 22px;text-wrap:balance}
.plan__more-t{text-wrap:balance}
@media (max-width:359px){.plan .plan__go{font-size:.86rem;padding:12px 16px;gap:.4em}}
/* 30/10 tabelas dos artigos viram cartões no celular */
@media (max-width:600px){.table-wrap:has(.tcard){border:0;background:none;overflow:visible}
.tcard,.tcard tbody,.tcard tr,.tcard td{display:block;width:100%;min-width:0}.tcard thead{display:none}
.tcard tr{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:6px 16px;margin:0 0 12px}
.tcard td{padding:10px 0;border-bottom:1px solid var(--line);text-align:left}.tcard tr td:last-child{border-bottom:0}
.tcard td:first-child{font-weight:600;color:var(--ink)}
.tcard td[data-l]:not(:first-child)::before{content:attr(data-l);display:block;margin-bottom:4px;font:500 .7rem/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}}
@media (max-width:600px){.tcard tr td:not(:last-child){border-bottom:1px solid var(--line)}}
/* 30/10 nome do contato no WhatsApp de exemplo numa linha */
.wa__bar .phone__name{text-wrap:balance;line-height:1.1}
@media (max-width:360px){.wa__bar{gap:7px;padding-left:10px;padding-right:10px}.wa__bar .phone__name{font-size:.84rem}}
@media (max-width:360px){.wa__icons svg:first-child{display:none}}

/* ENXUGA-HOME 30/10: linha "Não tem empresa?" no lugar da seção */
.alem__linha{margin-top:18px;font-size:.98rem;color:var(--ink-2)}
.alem__linha .link{font-weight:600}
@media (max-width:720px){.alem__linha{text-align:center}}

/* PAGAR 30/10: assinar no cartão (Asaas), Pix por e-mail, selo de segurança */
.pagar__pix{margin-top:12px;font-size:.92rem;color:var(--ink-2)}
.pagar__pix .link{font-weight:600}
.precos__comprar{display:block;margin-top:8px;font:600 .9rem/1.3 var(--f-body)}
.pagar__seg{margin-top:6px;font-size:.8rem;color:var(--ink-3,var(--ink-2));opacity:.85}
.offer__go{margin-top:18px}
.plan__inst{margin-top:6px;font-size:.92rem;color:var(--ink-2)}
.plan__muda{margin-top:12px;font-size:1rem}
.plan__muda strong{font-weight:700}
/* 30/10: subtítulo dos grupos na tabela de avulsos */
.precos tr.precos__grupo{display:table-row;border-bottom:1px solid var(--line)}
.precos .precos__grupo th{font:500 .78rem/1.2 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);padding-top:34px;padding-bottom:10px}
.precos tbody:first-of-type .precos__grupo th{padding-top:10px}
@media (max-width:700px){.precos tr.precos__grupo{display:block;padding:24px 18px 8px}.precos .precos__grupo th{display:block;padding:0}.precos tbody:first-of-type tr.precos__grupo{padding-top:10px}.precos tbody:first-of-type .precos__grupo th{padding:0}}

/* TRAFEGO (30/10): seção de tráfego pago na home */
.trafego__l{margin:24px 0 0;padding:0;list-style:none;display:grid;gap:14px}
.trafego__l li{position:relative;padding-left:22px;line-height:1.55}
.trafego__l li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--ipe);opacity:.9}
.trafego__nota{margin-top:20px;font-size:.92rem;color:var(--ink-2)}
.trafego .actions{margin-top:28px;display:flex;flex-wrap:wrap;gap:18px;align-items:center}
/* AR-TRAFEGO (30/10/2026): robô recortado saindo do painel holográfico. Tudo em transform/opacity; o painel é escuro nos dois temas. */
.ar{--mx:0;--my:0;--cia:#6fe3f2;--oro:#f2c14a;--vid:rgba(10,18,32,.82);position:relative;margin:0;min-width:0}
.ar__s{position:relative;aspect-ratio:1/1.1;perspective:1100px;isolation:isolate}
.ar__cam{transition:transform .35s cubic-bezier(.2,.7,.3,1)}
.ar__cam--1{transform:translate3d(calc(var(--mx)*-14px),calc(var(--my)*-10px),0) rotateY(calc(15deg + var(--mx)*-4deg)) rotateX(calc(var(--my)*3deg))}
.ar__cam--2{transform:translate3d(calc(var(--mx)*10px),calc(var(--my)*8px),0)}
.ar__cam--3{transform:translate3d(calc(var(--mx)*26px),calc(var(--my)*20px),0)}
.ar__halo{position:absolute;inset:6% -4% 2%;z-index:0;border-radius:50%;background:radial-gradient(closest-side,rgba(111,227,242,.34),rgba(242,193,74,.14) 56%,transparent 76%);animation:arHalo 7s ease-in-out infinite}
.ar__anel{position:absolute;left:50%;top:50%;width:84%;aspect-ratio:1;margin:-42% 0 0 -38%;z-index:0;border-radius:50%;border:1px dashed rgba(111,227,242,.55);box-shadow:0 0 30px rgba(111,227,242,.12);animation:arGira 38s linear infinite}
.ar__anel--2{width:64%;margin:-32% 0 0 -28%;border:2px solid transparent;border-top-color:var(--oro);border-right-color:rgba(242,193,74,.3);box-shadow:none;animation-duration:15s;animation-direction:reverse}
.ar__luz{position:absolute;left:0;top:0;width:3px;height:3px;border-radius:50%;z-index:1;color:var(--cia);background:currentColor;box-shadow:90px 330px 3px currentColor,170px 420px 2px currentColor,250px 290px 3px currentColor,340px 450px 2px currentColor,420px 330px 3px currentColor,480px 410px 2px currentColor,60px 480px 3px currentColor;animation:arSobe 9s linear infinite}
.ar__luz--2{color:var(--oro);translate:30px 40px;animation-duration:13s;animation-delay:-5s}
.ar__chao{position:absolute;left:-2%;right:-2%;bottom:0;height:34%;z-index:0;background:repeating-linear-gradient(90deg,rgba(111,227,242,.3) 0 1px,transparent 1px 11%),repeating-linear-gradient(0deg,rgba(111,227,242,.3) 0 1px,transparent 1px 20%);transform:perspective(420px) rotateX(62deg);transform-origin:bottom;-webkit-mask-image:radial-gradient(ellipse at 50% 100%,#000 12%,transparent 72%);mask-image:radial-gradient(ellipse at 50% 100%,#000 12%,transparent 72%)}
.ar__rob{position:absolute;right:-5%;bottom:0;width:88%;z-index:2}
.ar__rob img{display:block;width:100%;height:auto;filter:drop-shadow(0 14px 22px rgba(8,16,30,.3));animation:arFlutua 8s ease-in-out infinite}
.ar__p{position:absolute;margin:0;color:#eaf6fa;background:linear-gradient(150deg,rgba(24,44,70,.86),var(--vid));border:1px solid rgba(111,227,242,.5);border-radius:14px;box-shadow:0 0 0 1px rgba(111,227,242,.08),0 16px 38px rgba(6,12,24,.4),inset 0 0 26px rgba(111,227,242,.1);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);overflow:hidden}
.ar__tit{margin:0;display:flex;align-items:center;gap:7px;font-size:clamp(.66rem,1.05vw,.78rem);letter-spacing:.04em;color:#a9dbe6}
.ar__vivo{width:8px;height:8px;border-radius:50%;background:#62e6a0;box-shadow:0 0 9px #62e6a0;animation:arPisca 1.6s ease-in-out infinite}
.ar__p--camp{left:-5%;top:0;width:58%;z-index:1;padding:12px 14px 14px;transform-origin:left center}
.ar__p--camp ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:9px}
.ar__lin{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;font-size:clamp(.66rem,1.05vw,.8rem);line-height:1.2}
.ar__nome{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ar__nome b{font-weight:600;color:#fff}
.ar__st{font-size:.92em;color:#62e6a0;transition:color .4s}
.ar__barra{grid-column:1/-1;height:6px;border-radius:4px;background:rgba(255,255,255,.12);overflow:hidden}
.ar__barra i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cia),#8ff0c4);transform-origin:left;transition:transform 1s cubic-bezier(.3,.7,.2,1),background .4s;box-shadow:0 0 10px rgba(111,227,242,.7)}
.ar__lin--boa .ar__barra i{transform:scaleX(.72)}.ar__lin--sobe .ar__barra i{transform:scaleX(.9)}.ar__lin--ruim .ar__barra i{transform:scaleX(.08);background:#ff8a7a;box-shadow:none}
.ar__lin--ruim .ar__st{color:#ff9d8f}
.ar.is-antes .ar__lin--sobe .ar__barra i{transform:scaleX(.4)}.ar.is-antes .ar__lin--ruim .ar__barra i{transform:scaleX(.62);background:linear-gradient(90deg,var(--oro),#ffb35c)}.ar.is-antes .ar__lin--ruim .ar__st{color:#62e6a0}
.ar__scan{position:absolute;left:0;right:0;top:0;height:42%;background:linear-gradient(180deg,transparent,rgba(111,227,242,.18));border-bottom:1px solid rgba(111,227,242,.6);animation:arScan 5s linear infinite;pointer-events:none}
.ar__p--kpi{right:-5%;top:1%;width:29%;z-index:3;padding:10px 12px}
.ar__p--cont{right:-4%;bottom:9%;width:29%;z-index:3;padding:10px 12px}
.ar__num{margin:3px 0 4px;font-size:clamp(1.05rem,2.1vw,1.6rem);font-weight:650;line-height:1.1;color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 0 14px rgba(111,227,242,.7)}
.ar__linha{display:block;width:100%;height:auto;overflow:visible}.ar__linha path{fill:none;stroke:var(--oro);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;filter:drop-shadow(0 0 4px rgba(242,193,74,.8));animation:arTraco 6s ease-in-out infinite}
.ar__bars{display:flex;align-items:flex-end;gap:4px;height:26px}.ar__bars i{flex:1;height:100%;transform-origin:bottom;border-radius:2px 2px 0 0;background:linear-gradient(0deg,var(--cia),#8ff0c4);animation:arBarra 3.4s ease-in-out infinite}
.ar__bars i:nth-child(1){--h:.35}.ar__bars i:nth-child(2){--h:.5;animation-delay:.2s}.ar__bars i:nth-child(3){--h:.42;animation-delay:.4s}.ar__bars i:nth-child(4){--h:.66;animation-delay:.6s}.ar__bars i:nth-child(5){--h:.58;animation-delay:.8s}.ar__bars i:nth-child(6){--h:.82;animation-delay:1s}.ar__bars i:nth-child(7){--h:1;animation-delay:1.2s}
.ar__aviso{position:absolute;left:2%;bottom:3%;z-index:4;max-width:60%;margin:0;padding:8px 12px;display:flex;gap:8px;align-items:center;border-radius:12px;font-size:clamp(.68rem,1.05vw,.82rem);line-height:1.28;color:#fff3cf;background:rgba(32,24,8,.86);border:1px solid rgba(242,193,74,.65);box-shadow:0 0 22px rgba(242,193,74,.3);opacity:1;transition:opacity .45s,translate .45s}
.ar__aviso span{flex:none;width:8px;height:8px;border-radius:50%;background:var(--oro);box-shadow:0 0 9px var(--oro)}
.ar.is-antes .ar__aviso{opacity:0;translate:0 10px}
.ar__feixe{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.ar__feixe path{fill:none;stroke:var(--cia);stroke-width:.7;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 0 5px var(--cia))}
.ar__toque{position:absolute;left:26%;top:24.5%;width:0;height:0;pointer-events:none}
.ar__toque i{position:absolute;left:-46px;top:-46px;width:92px;height:92px;border-radius:50%;border:2px solid var(--cia);box-shadow:0 0 14px var(--cia),inset 0 0 12px rgba(111,227,242,.5);opacity:0}
.ar.is-toque .ar__toque i{animation:arOnda 1.4s ease-out both}.ar.is-toque .ar__toque i:nth-child(2){animation-delay:.16s}.ar.is-toque .ar__toque i:nth-child(3){animation-delay:.32s}
.ar.is-toque .ar__feixe path{animation:arFeixe 1.2s ease-out both}
.ar figcaption{margin-top:8px;text-align:center;font-size:.72rem;color:var(--ink-2)}
.ar.ar--pre .ar__p,.ar.ar--pre .ar__rob,.ar.ar--pre .ar__aviso{opacity:0}
.ar.ar--in .ar__rob{animation:arSalta 1.15s cubic-bezier(.16,1,.3,1) both}
.ar.ar--in .ar__p--camp{animation:arEntra 1s .25s cubic-bezier(.16,1,.3,1) both}.ar.ar--in .ar__p--kpi{animation:arEntra 1s .5s cubic-bezier(.16,1,.3,1) both}.ar.ar--in .ar__p--cont{animation:arEntra 1s .7s cubic-bezier(.16,1,.3,1) both}
@keyframes arGira{to{rotate:360deg}}
@keyframes arSobe{0%{transform:translateY(40px);opacity:0}15%{opacity:1}80%{opacity:.7}100%{transform:translateY(-240px);opacity:0}}
@keyframes arSalta{from{opacity:0;scale:.72;translate:0 8%}to{opacity:1;scale:1;translate:0 0}}
@keyframes arEntra{from{opacity:0;scale:.9;filter:brightness(2.2)}to{opacity:1;scale:1;filter:none}}
@keyframes arFlutua{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-1.6%) scale(1.012)}}
@keyframes arHalo{0%,100%{opacity:.6;transform:scale(.97)}50%{opacity:1;transform:scale(1.04)}}
@keyframes arPisca{50%{opacity:.35}}
@keyframes arScan{from{transform:translateY(-100%)}to{transform:translateY(260%)}}
@keyframes arTraco{0%{stroke-dashoffset:1}55%,100%{stroke-dashoffset:0}}
@keyframes arBarra{0%,100%{transform:scaleY(calc(var(--h)*.8))}50%{transform:scaleY(var(--h))}}
@keyframes arOnda{0%{opacity:.95;transform:scale(.12)}100%{opacity:0;transform:scale(1.5)}}
@keyframes arFeixe{0%{stroke-dashoffset:1;opacity:1}55%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@media (max-width:899px){.ar{width:min(100%,520px);margin-inline:auto}.ar__p--camp{left:0}.ar__p--kpi,.ar__p--cont{right:0}.ar__rob{right:0}.ar__nome span{display:none}.ar__cam--3{transform:none}}
@media (prefers-reduced-motion:reduce){.ar *{animation:none!important;transition:none!important}.ar__feixe{display:none}.ar__bars i{transform:scaleY(var(--h))}.ar__scan,.ar__luz{display:none}}
@media (max-width:899px){.trafego .actions{justify-content:center}.trafego h2,.trafego .lead{text-align:center}.ar{order:-1}.trafego__l{max-width:36ch;margin-left:auto;margin-right:auto}.trafego__l li{text-align:left}.trafego__nota{text-align:center}}

/* AR-RAIO (31/10, Felipe #2090): raio fino do dedo do robô até o painel. Desenhado no site.js; some com reduce-motion. */
.ar__raio{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none;overflow:visible}
.ar__raio path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.ar__raio .r-glow{stroke:rgba(126,232,246,.55);stroke-width:4.5;filter:url(#arRaioBrilho)}
.ar__raio .r-core{stroke:#f3fdff;stroke-width:1.15}
.ar__raio .r-galho{stroke:rgba(214,248,253,.8);stroke-width:.7}
.ar__raio .r-alvo{fill:rgba(190,246,252,.9);filter:url(#arRaioBrilho)}
@media (prefers-reduced-motion:reduce){.ar__raio{display:none}}
.ar__feixe{display:none}

/* ================= v10: camada de movimento e blocos interativos ================= */
/* Grão de filme muito leve, sem JS */
body::after{content:"";position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
@media (prefers-reduced-motion:no-preference){body::after{animation:grain 1.2s steps(6) infinite}}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
/* Barra de leitura de 2 px no topo */
.progress-bar{position:fixed;left:0;top:env(safe-area-inset-top,0px);height:2px;width:100%;background:var(--ipe);transform-origin:left;transform:scaleX(0);z-index:70;pointer-events:none}

/* Faixa de texto gigante */
.marquee{display:flex;overflow:hidden;padding-block:clamp(18px,2.6vw,32px) clamp(20px,3vw,40px);user-select:none}
.marquee__track{display:flex;flex:none;align-items:center;gap:clamp(20px,3vw,44px);padding-right:clamp(20px,3vw,44px);will-change:transform}
.marquee span{font:700 clamp(1.05rem,1.7vw,1.5rem)/1.2 "Plus Jakarta Sans",var(--f-body);letter-spacing:-.02em;white-space:nowrap;color:var(--ink)}
.marquee i{width:clamp(7px,.7vw,10px);height:clamp(7px,.7vw,10px);border-radius:50%;background:var(--ipe);flex:none}
@media (prefers-reduced-motion:no-preference){.marquee__track{animation:marq 24s linear infinite}}
@keyframes marq{to{transform:translateX(-100%)}}

/* Mapa da busca local: visual fixo enquanto o texto rola (sticky, sem sequestrar a rolagem) */
.story{--map-line:#4A73A8}
.story .head h2{max-width:20ch}
.story__grid{display:grid;gap:40px}
@media (min-width:960px){.story__grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:72px}.story__visual{position:sticky;top:110px;align-self:start}}
.story__text{display:grid}
.story__step{padding-block:clamp(32px,9vh,104px);opacity:.6;transition:opacity .6s var(--ease-out)}
.story__step.is-on{opacity:1}
@media (max-width:959px){.story__step{opacity:1;padding-block:22px}}
.story__n{font:500 .8rem/1 var(--f-mono);color:var(--ipe);margin-bottom:14px}
.story__step h3{font-size:clamp(1.5rem,2.4vw,2rem);margin-bottom:12px}
.story__step p:last-child{color:var(--ink-2)}
.story__note{margin-top:16px}
.map{position:relative;border:1px solid var(--line);border-radius:22px;background:radial-gradient(120% 90% at 50% 40%,#16284A 0%,#0F1B2E 70%);overflow:hidden}
.map__svg{width:100%;height:auto;display:block}
.map__lake{fill:#14315A;opacity:.55}
.map__road{fill:none;stroke:var(--map-line);stroke-width:2.2;stroke-linecap:round;opacity:.85}
.map__dots circle{fill:#2A4468}
.map__road--eixo{stroke-width:4;stroke:#7FA6D6;opacity:1}
.map__grid rect{fill:#1F3961;stroke:#33547F}
.pin__dot{fill:#8FA6C4;transition:fill .5s,transform .6s var(--ease-spring);transform-box:fill-box;transform-origin:center}
.pin__halo{fill:#9EC1E6;opacity:.18;transform-box:fill-box;transform-origin:center;transition:opacity .5s,transform .8s var(--ease-out)}
.map__you text{font:600 15px var(--f-body);fill:#EEF0EE;opacity:0;transition:opacity .5s}
.map__foot{display:grid;grid-template-columns:1fr 1.2fr;gap:18px;padding:18px;border-top:1px solid #2A3850;align-items:center}
.map__card{background:rgba(13,22,36,.85);border:1px solid #2A3850;border-radius:16px;padding:14px 16px;color:#EEF0EE;display:grid;gap:4px;transition:opacity .6s,transform .7s var(--ease-spring)}
.map__card-t{font:500 .7rem/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:#A9B5C4}
.map__card ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px;font-size:.8rem}
.map__card li{display:flex;gap:8px;align-items:center;color:#A9B5C4;transition:color .4s}
.chk{width:14px;height:14px;border-radius:50%;border:1.5px solid #3B5578;flex:none;transition:background .4s,border-color .4s}
.ring{position:relative;width:62px;height:62px}
.ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.ring__bg{fill:none;stroke:#2A3850;stroke-width:4}
.ring__fg{fill:none;stroke:var(--ipe);stroke-width:4;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:60;transition:stroke-dashoffset 1s var(--ease-out)}
.ring b{position:absolute;inset:0;display:grid;place-items:center;font:600 .6rem var(--f-mono);letter-spacing:-.03em}
.map__meters{display:grid;gap:12px;transition:opacity .6s;order:-1}
.map__meters span{display:grid;grid-template-columns:1fr 1.3fr;gap:8px;align-items:center;font:500 .68rem/1 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;color:#A9B5C4}
.map__meters i{height:4px;border-radius:4px;background:#2A3850;position:relative;overflow:hidden}
.map__meters i::after{content:"";position:absolute;inset:0;background:#9EC1E6;transform:scaleX(.5);transform-origin:left;transition:transform 1s var(--ease-out)}
/* Sem JS a ilustração fica no estado final (completo). Com JS, ela acompanha o texto. */
.js-motion .map[data-state="0"] .map__meters{opacity:0}
.js-motion .map[data-state="0"] .map__card{opacity:0;transform:translateY(16px)}
.map[data-state="1"] .map__meters span:nth-child(1) i::after{transform:scaleX(.55)}
.map[data-state="1"] .map__meters span:nth-child(2) i::after{transform:scaleX(.8)}
.map[data-state="1"] .map__meters span:nth-child(3) i::after{transform:scaleX(.35)}
.map[data-state="2"] .map__meters span:nth-child(1) i::after{transform:scaleX(.95)}
.map[data-state="2"] .map__meters span:nth-child(2) i::after{transform:scaleX(.8)}
.map[data-state="2"] .map__meters span:nth-child(3) i::after{transform:scaleX(.85);background:var(--ipe)}
.map[data-state="2"] .pin--eu .pin__dot{fill:var(--ipe);transform:scale(1.5)}
.map[data-state="2"] .pin--eu .pin__halo{fill:var(--ipe);opacity:.35;transform:scale(1.6)}
.map[data-state="2"] .map__you text{opacity:1}
.map[data-state="2"] .ring__fg{stroke-dashoffset:0}
.map[data-state="1"] .map__card li[data-at="1"] .chk,.map[data-state="2"] .map__card li .chk{background:var(--ipe);border-color:var(--ipe)}
.map[data-state="1"] .map__card li[data-at="1"],.map[data-state="2"] .map__card li{color:#EEF0EE}
@media (prefers-reduced-motion:no-preference){.map[data-state="2"] .pin--eu .pin__halo{animation:pulse 2.4s var(--ease-out) infinite}}
@keyframes pulse{0%{opacity:.45;transform:scale(1)}100%{opacity:0;transform:scale(2.8)}}
@media (max-width:600px){.map__foot{grid-template-columns:1fr}.map__card ul{font-size:.76rem}}
.map__card{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;align-items:center}.map__card ul{grid-column:1/-1}

/* Calculadora */
.calc__grid{display:grid;gap:40px}
@media (min-width:960px){.calc__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}}
.calc__grid > *{min-width:0}
.calc__form{display:grid;gap:26px;margin-top:34px}
.calc__form label{display:grid;grid-template-columns:1fr auto;gap:10px 16px;align-items:baseline}
.calc__form label span{font-weight:600}
.calc__form output{font:600 1.1rem/1 var(--f-mono);font-variant-numeric:tabular-nums}
.calc__form input{grid-column:1/-1;width:100%;accent-color:var(--ipe);height:28px;cursor:pointer}
.calc__out{background:var(--night);color:var(--on-night);border-radius:24px;padding:clamp(26px,4vw,48px);display:grid;gap:16px}
.calc__out .fine{color:#A9B5C4}
.calc__label{font:500 .76rem/1.3 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:#A9B5C4}
.calc__big{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;font:800 clamp(2.8rem,7vw,5.6rem)/1 var(--f-display);font-stretch:100%;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.calc__big small{font:500 1rem var(--f-body);letter-spacing:0;color:#A9B5C4}
.calc__year{font:500 1rem var(--f-mono)}
.calc__bars{display:flex;align-items:flex-end;gap:6px;height:90px}
.calc__bars i{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(to top,var(--ipe),#F0C64A);height:calc(var(--h) * var(--k,.4) * 100%);min-height:3px;transition:height .7s var(--ease-spring)}
.calc__out .btn{justify-self:start;--btn-shadow:none;white-space:normal;min-height:52px;height:auto;padding-block:12px;line-height:1.25}

/* Planos: luz que segue o cursor */
@media (hover:hover) and (pointer:fine){
  .plan{position:relative;overflow:hidden}
  .plan--mid{overflow:visible}
  .plan::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(217,161,14,.14),transparent 45%)}
  .plan:hover::before{opacity:1}
}

/* Cursor: anel discreto que cresce sobre o que é clicável (só mouse) */
.cursor{position:fixed;left:0;top:0;width:34px;height:34px;margin:-17px 0 0 -17px;border:1.5px solid #fff;border-radius:50%;pointer-events:none;z-index:95;opacity:0;mix-blend-mode:difference;transition:width .35s var(--ease-spring),height .35s var(--ease-spring),margin .35s var(--ease-spring),opacity .3s,background-color .3s}
.cursor.is-on{opacity:.9}
.cursor.is-link{width:64px;height:64px;margin:-32px 0 0 -32px;background:#fff}
@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.cursor{display:none}}

/* Assinatura gigante no rodapé */
.foot__word{font:800 clamp(3.6rem,18.5vw,17rem)/.82 var(--f-display);font-stretch:112%;letter-spacing:-.06em;margin:56px 0 0;color:var(--ink);white-space:nowrap;overflow:hidden;text-align:center}
.foot__word .dot{color:var(--ipe)}
@media (max-width:480px){.foot__word{font-stretch:100%}}

/* Linhas mascaradas do SplitText */
.split-mask{overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}

/* Abertura do título só com CSS: cada linha sobe por trás de uma máscara. Começa na primeira pintura. */
.photo--band{overflow:hidden}
@media (prefers-reduced-motion:no-preference){
  .hero h1 .l{overflow:hidden;padding:0 .14em .24em;margin:0 -.14em -.24em}
  .hero h1 .l > span{display:inline-block;animation:lineup 1s cubic-bezier(.23,1,.32,1) both}
  .hero h1 .l:nth-child(2) > span{animation-delay:.12s}
  .hero__side > *{animation:fadeup .9s cubic-bezier(.23,1,.32,1) both}
  .hero__side > *:nth-child(2){animation-delay:.1s}.hero__side > *:nth-child(3){animation-delay:.2s}
}
@keyframes lineup{from{transform:translateY(105%)}}
@keyframes fadeup{from{transform:translateY(18px)}}
/* Rico (computador com mouse): a faixa passa a ser guiada pela rolagem */
.gsap-on .marquee__track{animation:none}

/* Os eixos se desenham quando o mapa aparece */
.js-motion .map__road{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2.2s var(--ease-out)}
.js-motion .map.is-drawn .map__road{stroke-dashoffset:0}
.js-motion .map .pin{opacity:0;transition:opacity .6s}
.js-motion .map.is-drawn .pin{opacity:1}
.js-motion .map.is-drawn .pin:nth-of-type(1){transition-delay:0.69s}
.js-motion .map.is-drawn .pin:nth-of-type(2){transition-delay:0.78s}
.js-motion .map.is-drawn .pin:nth-of-type(3){transition-delay:0.87s}
.js-motion .map.is-drawn .pin:nth-of-type(4){transition-delay:0.96s}
.js-motion .map.is-drawn .pin:nth-of-type(5){transition-delay:1.05s}
.js-motion .map.is-drawn .pin:nth-of-type(6){transition-delay:1.14s}
.js-motion .map.is-drawn .pin:nth-of-type(7){transition-delay:1.23s}
.js-motion .map.is-drawn .pin:nth-of-type(8){transition-delay:1.32s}

/* Páginas novas de 28/10: artigos, novidades, loja e equipamentos (src/novas.py) */
.art-hero h1{font-size:clamp(2rem,5.2vw,4.2rem);max-width:22ch}
.art-photo{margin-top:0}
.art-wrap{display:grid;gap:clamp(32px,4vw,52px);max-width:46rem}
.art{display:grid;gap:18px;color:var(--ink-2);font-size:1.06rem;line-height:1.7}
.art h2{color:var(--ink);font-size:clamp(1.45rem,2.6vw,2rem);line-height:1.18;margin-top:clamp(20px,3vw,36px);scroll-margin-top:100px}
.art h2:first-child{margin-top:0}
.art h3{color:var(--ink);font-size:1.18rem;margin-top:10px}
.art p,.art li{text-wrap:pretty}
.art ul,.art ol{margin:0;padding-left:1.25em;display:grid;gap:10px}
.art li::marker{color:var(--ipe)}
.art strong{color:var(--ink);font-weight:600}
.art a{color:inherit;font-weight:600;text-decoration:underline;text-decoration-color:var(--ipe);text-decoration-thickness:2px;text-underline-offset:.25em}
.art .table-wrap{margin:6px 0}
.art table{min-width:0;font-size:.94rem;line-height:1.5}
.art th,.art td{padding:12px 14px}
.art-tags{display:grid;gap:10px}
.art-tags .fine{font:500 .74rem/1 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}
.tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.tag{display:inline-flex;font:500 .92rem/1.2 var(--f-body);padding:10px 15px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none;transition:border-color .2s}
.tag:hover{border-color:var(--ink)}
.art-next{padding:clamp(24px,3vw,36px);border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);display:grid;gap:18px}
.art-next p{color:var(--ink)}
.art-next .actions{gap:22px 28px}
.art-card{grid-column:span 12}
@media (min-width:700px){.art-card{grid-column:span 6}}
@media (min-width:1100px){.art-card{grid-column:span 4}}
.nov-card{grid-column:span 12}
@media (min-width:860px){.nov-card{grid-column:span 4}}
.prod{position:relative}
.prod__tag{display:inline-flex;justify-self:start;font:500 .72rem/1 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2);padding:8px 12px;border-radius:999px;background:var(--bg-2)}
.prod__price{font:800 1.6rem/1 var(--f-display);color:var(--ink)}
.prod .btn{justify-self:start}
.prod--wide{max-width:46rem}
.prod__ph{margin:-28px -28px 4px;overflow:hidden;border-radius:var(--radius) var(--radius) 0 0}
.prod__ph img{width:100%;aspect-ratio:4/3;object-fit:cover}
@media (max-width:700px){
  .art-hero h1{margin-inline:auto}
  .art-tags{justify-items:center;text-align:center}
  .art-tags .tags{justify-content:center}
  .art-next{text-align:center}
  .art-next .actions{justify-content:center}
  .prod{text-align:center}
  .prod__tag,.prod .btn{justify-self:center}
  .prod .actions{justify-content:center}
  #equipamentos .amz-aviso{text-align:center}
  .prod dl{text-align:left}
}
@media (min-width:640px){.lib__card[data-k="art"]{grid-column:span 6}}
@media (min-width:1100px){.lib__card[data-k="art"]{grid-column:span 4}}
.art > *,.art-wrap > *{min-width:0}
.art h2,.card h3,.gstep h3,.step h3,.row h3,.lib__card h3{text-wrap:balance}
/* Artigo no computador: coluna de leitura centralizada, com o título alinhado a ela (sem o vão à direita) */
@media (min-width:900px){
  .art-wrap{margin-inline:auto}
  .art-hero .wrap > *{max-width:46rem;margin-inline:auto}
  .art-hero h1{max-width:46rem}
}
/* Amazon na Lotaloja (30/10/2026): seletor de negócio, grupos de /equipamentos/ e bloco do equipamento dentro dos guias */
.equip{display:grid;gap:clamp(48px,6vw,80px)}
.equip-sel{display:grid;gap:14px;justify-items:start}
.equip-sel__q{font:600 clamp(1.25rem,2.4vw,1.6rem)/1.2 var(--f-display);color:var(--ink)}
.equip-n{margin:0}
.equip-grupo{display:grid;gap:clamp(20px,3vw,32px);scroll-margin-top:100px}
.equip-grupo[hidden],.equip .prod[hidden]{display:none}
.equip .prod{scroll-margin-top:100px}
.equip .prod h3{font-size:1.2rem}
.amz-pick{display:grid;grid-template-columns:112px 1fr;gap:18px;align-items:center;margin:6px 0;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.amz-pick__ph{margin:0;border-radius:calc(var(--radius) - 4px);overflow:hidden}
.amz-pick__ph img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.amz-pick__t{display:grid;gap:6px;justify-items:start}
.amz-pick__t p{margin:0;font-size:.98rem;line-height:1.55}
.amz-pick__k{font:500 .72rem/1 var(--f-mono)!important;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}
.amz-pick__n{font-weight:600;color:var(--ink)}
.art .amz-pick a.btn{text-decoration:none;font-weight:500;margin-top:6px}
.amz-aviso{margin-top:6px}
@media (max-width:700px){
  .equip-sel{justify-items:center;text-align:center}
  .equip-sel .chips{justify-content:center}
  .amz-pick{grid-template-columns:1fr;text-align:center;justify-items:center}
  .amz-pick__ph{width:min(220px,70%)}
  .amz-pick__t{justify-items:center}
}
.equip-sel .chips{margin-top:0}
