:root{
  --vinho:#4E2220;--vinho-h:#3B1817;--petroleo:#0F414A;--petroleo-h:#0B333A;
  --azul:#96C0CE;--creme:#F5F5F6;
  --texto:#2B2B2E;--sec:#5C5C63;--ter:#85858D;--borda:#E6E6E8;--sup:#FAFAFB;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Poppins',system-ui,sans-serif;color:var(--texto);background:#fff;line-height:1.6;font-size:15px}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.logo{font-family:'Pinyon Script',cursive;color:var(--vinho);font-size:30px;line-height:1.1}

.logo img{height:38px;width:auto}
footer .logo img{height:48px}
header.site .logo{flex-shrink:0}
@media(max-width:1100px){header.site .wrap{gap:16px}header.site nav{gap:14px;font-size:13px}.logo img{height:32px}}
/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 22px;border-radius:9px;border:1px solid transparent;font-weight:500;font-size:14px;transition:.15s}
.btn-vinho{background:var(--vinho);color:#fff}.btn-vinho:hover{background:var(--vinho-h)}
.btn-pet{background:#fff;color:var(--vinho);border-color:var(--vinho)}.btn-pet:hover{background:var(--vinho);color:#fff}
.btn-sec{background:#fff;color:var(--texto);border-color:#D5D5DA}.btn-sec:hover{border-color:var(--vinho);color:var(--vinho)}
.btn-sm{height:36px;padding:0 14px;font-size:13px}

/* cabeçalho */
.topo{background:var(--vinho);color:#fff;font-size:12px}
.topo .wrap{display:flex;justify-content:space-between;gap:12px;padding-top:6px;padding-bottom:6px;flex-wrap:wrap}
header.site{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--borda)}
header.site .wrap{display:flex;align-items:center;gap:28px;height:68px}
header.site nav{display:flex;gap:22px;margin-left:auto;font-size:14px}
header.site nav a{color:var(--sec);padding:6px 0;border-bottom:2px solid transparent}
header.site nav a:hover,header.site nav a.ativo{color:var(--vinho);border-color:var(--vinho)}
.btn-orc{position:relative}
.btn-orc .n{background:#fff;color:var(--vinho);border-radius:99px;min-width:22px;height:22px;display:inline-grid;place-items:center;font-size:12px;font-weight:600;padding:0 6px}
.menu-btn{display:none;background:none;border:1px solid var(--borda);border-radius:8px;width:40px;height:40px;font-size:18px}

/* hero */
.hero{background:#fff;padding:72px 0}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--vinho);font-weight:600}
.hero h1{font-size:44px;line-height:1.15;font-weight:600;margin:12px 0 16px}
.hero h1 em{font-style:normal;color:var(--vinho)}
.hero p{color:var(--sec);font-size:17px;max-width:520px}
.hero .acoes{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}

/* seções */
section.sec{padding:72px 0}
section.sec.alt{background:var(--sup)}
.sec-head{max-width:640px;margin-bottom:36px}
.sec-head h2{font-size:30px;font-weight:600;line-height:1.25;margin-top:6px}
.sec-head p{color:var(--sec);margin-top:10px}
.centro{text-align:center;margin-left:auto;margin-right:auto}

.sobre{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.sobre p{color:var(--sec);margin-bottom:14px}
.numeros{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.numeros div{background:#fff;border:1px solid var(--borda);border-radius:12px;padding:22px}
.numeros b{display:block;font-size:30px;font-weight:600;color:var(--vinho)}
.numeros span{font-size:13px;color:var(--sec)}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:#fff;border:1px solid var(--borda);border-radius:12px;padding:26px}
.card .ic{width:48px;height:48px;border-radius:12px;background:#F1F1F3;display:grid;place-items:center;font-size:24px;margin-bottom:14px}
.card h3{font-size:16px;font-weight:600;margin-bottom:6px}
.card p{font-size:14px;color:var(--sec)}

.passos{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:p}
.passos div{counter-increment:p;position:relative;padding-top:48px}
.passos div::before{content:counter(p);position:absolute;top:0;left:0;width:36px;height:36px;border-radius:99px;background:var(--vinho);color:#fff;display:grid;place-items:center;font-weight:600}
.passos b{display:block;margin-bottom:4px}.passos span{font-size:14px;color:var(--sec)}

.publico{display:flex;flex-wrap:wrap;gap:10px}
.publico span{background:#fff;border:1px solid var(--borda);border-radius:99px;padding:10px 18px;font-size:14px;font-weight:500}
.publico span:hover{border-color:var(--vinho);color:var(--vinho)}

/* categorias */
.cats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.cat{background:#fff;border:1px solid var(--borda);border-radius:12px;padding:22px 12px;text-align:center;transition:.15s}
.cat:hover{border-color:var(--vinho);transform:translateY(-2px)}
.cat span{display:block;font-size:34px;margin-bottom:6px}
.cat img{width:100%;aspect-ratio:1/1;object-fit:contain;margin-bottom:8px}
.cat b{font-size:13.5px;font-weight:500}

/* produtos */
.produtos{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}
.prod{background:#fff;border:1px solid var(--borda);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:.15s}
.prod:hover{border-color:#C9C9CF;box-shadow:0 4px 14px rgba(20,20,30,.07)}
.prod .foto{aspect-ratio:1/1;background:#fff;display:grid;place-items:center;font-size:64px;cursor:pointer;overflow:hidden}

.prod .foto img{width:100%;height:100%;object-fit:cover}
.prod .info{padding:14px 16px 16px;display:flex;flex-direction:column;gap:4px;flex:1}
.prod .cat-nome{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ter)}
.prod h3{font-size:14.5px;font-weight:500;line-height:1.35;cursor:pointer}
.prod .btn{margin-top:auto;width:100%}
.prod .info .btn{margin-top:12px}
.cores{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:6px}
.cores .cor{display:inline-block;width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.18);flex:none}
.cores em{font-size:11px;color:var(--ter);font-style:normal;margin-left:2px}
.cores.nomes{gap:8px 14px}
.cores.nomes .c{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--sec)}
.cores.nomes .cor{width:20px;height:20px}

/* catálogo */
.cat-topo{background:var(--vinho);color:#fff;padding:40px 0}
.cat-topo h1{font-size:32px;font-weight:600}
.cat-topo p{color:var(--sec)}
.catalogo{display:grid;grid-template-columns:240px 1fr;gap:32px;padding:32px 20px 72px;max-width:1180px;margin:0 auto;align-items:start}
.lateral{position:sticky;top:90px}
.lateral h4{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ter);margin-bottom:10px}
.lateral button{display:flex;justify-content:space-between;width:100%;text-align:left;background:none;border:0;padding:9px 12px;border-radius:8px;font-size:13.5px;color:var(--sec)}
.lateral button:hover{background:#F4F4F6}
.lateral button.ativo{background:var(--vinho);color:#fff;font-weight:500}
.lateral button small{opacity:.6}
.barra{display:flex;gap:12px;align-items:center;margin-bottom:20px;flex-wrap:wrap}
.barra input{flex:1;min-width:200px;height:42px;border:1px solid #E0E0E4;border-radius:9px;padding:0 14px;font:inherit;font-size:14px;background:var(--sup)}
.barra input:focus,.campo input:focus,.campo textarea:focus{outline:none;border-color:var(--vinho)}
.barra span{font-size:13px;color:var(--ter)}
.vazio{border:1px dashed #D5D5DA;border-radius:12px;padding:40px;text-align:center;color:var(--ter);grid-column:1/-1}
.chips-mob{display:none}

/* contato */
.contato{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px}
.contato ul{list-style:none;display:grid;gap:16px;margin-top:20px}
.contato li b{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ter);font-weight:500}
.campo{display:grid;gap:5px;margin-bottom:14px}
.campo label{font-size:13px;font-weight:500}
.campo input,.campo textarea{border:1px solid #E0E0E4;border-radius:9px;padding:11px 14px;font:inherit;font-size:14px;background:#fff;width:100%}
.campo textarea{min-height:100px;resize:vertical}
.duas{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-box{background:#fff;border:1px solid var(--borda);border-radius:14px;padding:28px}

/* rodapé */
footer{background:var(--vinho);color:rgba(255,255,255,.88);padding:48px 0 24px;font-size:14px}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
footer .logo{color:#fff;font-size:34px}
footer h4{color:#fff;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
footer a{display:block;padding:2px 0}footer a:hover{color:#fff;text-decoration:underline}
.copy{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);padding-top:18px;font-size:12px;color:#9FB8BD}

/* gaveta de orçamento + modal */
.overlay{position:fixed;inset:0;background:rgba(18,22,26,.4);z-index:90;display:none}
.overlay.on{display:block}
.gaveta{position:fixed;top:0;right:0;bottom:0;width:460px;max-width:100%;background:#fff;z-index:100;box-shadow:-8px 0 30px rgba(15,20,30,.14);transform:translateX(105%);transition:.25s;display:flex;flex-direction:column}
.gaveta.on{transform:none}
.gaveta header{padding:18px 22px;border-bottom:1px solid var(--borda);display:flex;justify-content:space-between;align-items:center}
.gaveta header h3{font-size:17px;font-weight:600}
.x{width:32px;height:32px;border-radius:8px;border:1px solid #E0E0E4;background:#fff;font-size:15px}
.gaveta .corpo{flex:1;overflow:auto;padding:18px 22px}
.gaveta footer{background:#fff;color:var(--texto);padding:16px 22px;border-top:1px solid var(--borda);display:grid;gap:10px;grid-template-columns:1fr;font-size:14px}
.item-orc{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #EEEEF0}
.item-orc .mini{width:44px;height:44px;border-radius:8px;background:#F1F1F3;display:grid;place-items:center;font-size:22px;overflow:hidden}
.item-orc .mini img{width:100%;height:100%;object-fit:cover}
.item-orc b{font-size:13.5px;font-weight:500;display:block;line-height:1.3}
.qtd{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:12px;color:var(--ter)}
.qtd input{width:80px;height:28px;border:1px solid #E0E0E4;border-radius:6px;padding:0 8px;font:inherit;font-size:13px}
.rem{background:none;border:0;color:var(--ter);font-size:18px}.rem:hover{color:var(--vinho)}
.vazio-orc{color:var(--ter);text-align:center;padding:40px 10px;font-size:14px}
.dados{margin-top:18px}.dados h4{font-size:13px;margin-bottom:10px}
.modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:720px;max-width:calc(100% - 32px);max-height:calc(100% - 32px);overflow:auto;background:#fff;border-radius:14px;z-index:100;display:none}
.modal.on{display:grid;grid-template-columns:1fr 1fr}
.modal .foto{background:#fff;display:grid;place-items:center;font-size:96px;min-height:280px;aspect-ratio:1/1}
.modal .foto img{width:100%;height:100%;object-fit:contain}
.galeria{background:#fff;border-right:1px solid var(--borda)}
.thumbs{display:flex;gap:8px;padding:10px;border-top:1px solid var(--borda)}
.thumbs img{width:56px;height:56px;object-fit:contain;border:1px solid var(--borda);border-radius:8px;cursor:pointer;background:#fff}
.thumbs img.ativo{border-color:var(--vinho)}
.prod .foto img{object-fit:contain;background:#fff}
.modal .txt{padding:28px;display:flex;flex-direction:column;gap:10px;position:relative}
.modal .txt .x{position:absolute;top:12px;right:12px}
.modal h3{font-size:20px;font-weight:600;padding-right:34px}
.modal p{color:var(--sec);font-size:14px}
.pills{display:flex;gap:6px;flex-wrap:wrap}
.pills span{background:#F1F1F3;color:#3D3D42;border-radius:99px;padding:3px 11px;font-size:12px}
.aviso{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(80px);background:var(--vinho);color:#fff;padding:12px 20px;border-radius:10px;z-index:120;font-size:14px;transition:.25s;opacity:0}
.aviso.on{transform:translateX(-50%);opacity:1}
.wpp{position:fixed;right:20px;bottom:20px;width:54px;height:54px;border-radius:99px;background:#fff;color:var(--vinho);border:2px solid var(--vinho);display:grid;place-items:center;font-size:26px;box-shadow:0 4px 14px rgba(0,0,0,.2);z-index:30}

/* responsivo */
@media(max-width:900px){
  .hero .wrap,.sobre,.contato,footer .wrap{grid-template-columns:1fr}
  .hero h1{font-size:34px}
  .grid3,.passos{grid-template-columns:1fr 1fr}
  .cats{grid-template-columns:repeat(2,1fr)}
  .catalogo{grid-template-columns:1fr}
  .lateral{display:none}
  .chips-mob{display:flex;gap:8px;overflow-x:auto;padding-bottom:10px;margin-bottom:6px}
  .chips-mob button{white-space:nowrap;border:1px solid #E0E0E4;background:#fff;border-radius:99px;padding:7px 14px;font-size:13px}
  .chips-mob button.ativo{background:var(--vinho);color:#fff;border-color:var(--vinho)}
  header.site nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;flex-direction:column;padding:12px 20px;border-bottom:1px solid var(--borda);gap:4px}
  header.site nav.on{display:flex}
  .menu-btn{display:block;margin-left:auto}
  header.site .btn-orc{order:3}
  .modal.on{grid-template-columns:1fr}
}
@media(max-width:560px){
  .grid3,.passos,.duas{grid-template-columns:1fr}
  .produtos{grid-template-columns:1fr 1fr;gap:12px}
  .prod .foto{font-size:44px}
  .hero{padding:44px 0}section.sec{padding:48px 0}
  .btn-orc span.t{display:none}
}

/* ===== visual moderno: contraste, movimento e acabamento ===== */
body{overflow-x:hidden}
header.site{background:rgba(255,255,255,.82);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);transition:box-shadow .25s,background .25s}
header.site.rolou{box-shadow:0 6px 24px rgba(15,65,74,.10);background:rgba(255,255,255,.94)}
header.site nav a{position:relative;border-bottom:0}
header.site nav a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--vinho);transform:scaleX(0);transform-origin:left;transition:transform .25s}
header.site nav a:hover::after,header.site nav a.ativo::after{transform:scaleX(1)}
.btn{box-shadow:0 0 0 rgba(0,0,0,0)}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,20,30,.16)}
.btn:active{transform:translateY(0)}

/* entrada ao rolar */
html.js .rv{opacity:0;transform:translateY(30px);transition:opacity .75s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .75s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
html.js .rv.in{opacity:1;transform:none}

/* hero */
.hero{position:relative;overflow:hidden;padding:96px 0 120px;background:#fff}
.hero .wrap{position:relative;z-index:1}
.hero h1{font-size:54px;font-weight:700;letter-spacing:-.02em;line-height:1.1}
.hero h1 em{position:relative;color:var(--vinho);white-space:nowrap}
.hero h1 em::after{content:"";position:absolute;left:0;right:0;bottom:.04em;height:.2em;background:rgba(78,34,32,.16);z-index:-1;border-radius:4px;transform-origin:left;animation:sublinha 1s .5s cubic-bezier(.2,.7,.2,1) both}
@keyframes sublinha{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.blob{position:absolute;border-radius:50%;filter:blur(2px);opacity:.55;animation:flutua 14s ease-in-out infinite}
.blob.b1{width:420px;height:420px;background:rgba(78,34,32,.07);right:-120px;top:-140px}
.blob.b2{width:300px;height:300px;background:rgba(78,34,32,.05);left:-110px;bottom:-130px;animation-delay:-6s}
@keyframes flutua{0%,100%{transform:translate(0,0)}50%{transform:translate(24px,18px)}}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:60px;background:#fff;clip-path:polygon(0 100%,100% 100%,100% 0,0 70%)}
@keyframes sobe{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

/* faixa que corre */
.faixa{background:var(--vinho);color:#fff;overflow:hidden;white-space:nowrap;padding:14px 0;font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
.faixa-in{display:flex;width:max-content;animation:corre 38s linear infinite}
.faixa-in span{padding-right:0}
.faixa-in i{font-style:normal;color:rgba(255,255,255,.5);margin:0 18px}
.faixa:hover .faixa-in{animation-play-state:paused}
@keyframes corre{to{transform:translateX(-50%)}}

/* seções com contraste */
section.sec{padding:96px 0}
.sec-head h2{font-size:34px;letter-spacing:-.015em;font-weight:600}
.eyebrow{display:inline-flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--vinho);border-radius:2px}
section.sec.creme{background:#F5F5F6}
section.sec.escura{background:var(--petroleo);color:#fff;position:relative;padding:130px 0;clip-path:polygon(0 56px,100% 0,100% calc(100% - 56px),0 100%);margin:-56px 0}
section.sec.escura .eyebrow{color:var(--azul)}
section.sec.escura .eyebrow::before{background:var(--azul)}
section.sec.escura .sec-head p{color:#B7CFD4}
section.sec.escura .card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);transition:transform .25s,background .25s,border-color .25s}
section.sec.escura .card:hover{transform:translateY(-6px);background:rgba(255,255,255,.1);border-color:var(--azul)}
section.sec.escura .card h3{color:#fff}
section.sec.escura .card p{color:#B7CFD4}
section.sec.escura .card .ic{background:rgba(150,192,206,.22)}
section.sec.escura .passos div::before{background:var(--azul);color:var(--petroleo)}
section.sec.escura .passos span{color:#B7CFD4}
.passos div::after{content:"";position:absolute;top:18px;left:46px;right:-8px;height:1px;background:rgba(255,255,255,.2)}
.passos div:last-child::after{display:none}
#sobre{padding-top:140px}
#clientes{padding-top:150px}
.numeros div{transition:transform .25s,box-shadow .25s}
.numeros div:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(15,65,74,.10)}
.numeros b{font-size:38px;letter-spacing:-.02em}
.publico span{transition:transform .2s,background .2s,color .2s,border-color .2s}
.publico span:hover{transform:translateY(-3px);background:var(--vinho);color:#fff;border-color:var(--vinho)}

/* cartões e produtos */
.cat{border-radius:16px;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}
.cat:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(15,65,74,.14)}
.cat img{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.cat:hover img{transform:scale(1.08)}
.prod{border-radius:16px;transition:transform .25s,box-shadow .25s,border-color .25s}
.prod:hover{transform:translateY(-6px);box-shadow:0 18px 38px rgba(15,65,74,.14);border-color:#D8D8DE}
.prod .foto{background:#fff;border-bottom:1px solid #F1F1F3}
.prod .foto img{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.prod:hover .foto img{transform:scale(1.07)}
.prod .btn{transition:background .2s,transform .2s,box-shadow .2s}
.card{border-radius:16px}

/* faixa de chamada */
.cta-banda{background:var(--vinho);color:#fff;padding:72px 0;position:relative;overflow:hidden}
.cta-banda::before,.cta-banda::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.06)}
.cta-banda::before{width:320px;height:320px;right:-80px;top:-140px}
.cta-banda::after{width:200px;height:200px;left:6%;bottom:-120px}
.cta-banda .wrap{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.cta-banda h2{font-size:32px;font-weight:600;letter-spacing:-.015em}
.cta-banda p{color:rgba(255,255,255,.85);margin-top:6px}
.cta-banda .acoes{display:flex;gap:12px;flex-wrap:wrap}
.btn-claro{background:#fff;color:var(--vinho)}
.btn-claro:hover{background:#F1F1F3}
.btn-borda{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn-borda:hover{background:rgba(255,255,255,.12);border-color:#fff}

/* contato / rodapé */
.form-box{border-radius:20px;box-shadow:0 24px 60px rgba(15,65,74,.10)}
footer{background:var(--vinho)}

/* catálogo: topo */
.cat-topo{position:relative;overflow:hidden;padding:56px 0 64px}
.cat-topo::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:36px;background:#fff;clip-path:polygon(0 100%,100% 100%,100% 0,0 80%)}
.cat-topo h1{font-size:38px;letter-spacing:-.02em;font-weight:700}
.lateral button{transition:background .2s,transform .2s}
.lateral button:hover{transform:translateX(3px)}

@media(max-width:900px){
  .hero{padding:64px 0 90px}.hero h1{font-size:38px}
  .sec-head h2,.cta-banda h2{font-size:27px}
  section.sec.escura{clip-path:polygon(0 32px,100% 0,100% calc(100% - 32px),0 100%);margin:-32px 0;padding:90px 0}
  .passos div::after{display:none}
  #sobre{padding-top:100px}#clientes{padding-top:100px}
}
@media(prefers-reduced-motion:reduce){
  html.js .rv{opacity:1;transform:none;transition:none}
  .blob,.hero-mark::after,.hero-mark img,.faixa-in,.hero h1 em::after{animation:none}
  .btn:hover,.prod:hover,.cat:hover,.card:hover{transform:none}
}

/* marca no lugar do banner de produtos */
.hero-mark{display:grid;place-items:center;position:relative;min-height:380px}
.hero-mark::before{content:"";position:absolute;width:min(400px,86%);aspect-ratio:1/1;border-radius:50%;background:rgba(78,34,32,.06);border:1px solid rgba(78,34,32,.14)}
.hero-mark::after{content:"";position:absolute;width:min(480px,100%);aspect-ratio:1/1;border-radius:50%;border:1px dashed rgba(78,34,32,.22);animation:gira 60s linear infinite}
.hero-mark img{position:relative;width:min(210px,50%);animation:sobe 7s ease-in-out infinite}
@keyframes gira{to{transform:rotate(360deg)}}
.cat-topo .eyebrow{color:#fff}.cat-topo .eyebrow::before{background:#fff}.cat-topo p{color:rgba(255,255,255,.88)}
.cat-topo::after{background:#fff}

/* ===== v3: fundo cinza claro, banner com foto, botão CTA e layout fluido ===== */
:root{--bg:#F4F4F5;--bg2:#EAEAEC;--tom:rgba(78,34,32,.08);--corte:clamp(24px,4vw,56px)}
html{scroll-padding-top:96px}
body{background:var(--bg);font-size:clamp(14.5px,.3vw + 13.8px,16px);text-wrap:pretty}
h1,h2,h3{text-wrap:balance}
.wrap{padding-left:clamp(16px,4vw,32px);padding-right:clamp(16px,4vw,32px)}
header.site{background:rgba(244,244,245,.82)}
header.site.rolou{background:rgba(244,244,245,.96)}
section.sec{padding:clamp(56px,8vw,96px) 0}
section.sec.creme{background:var(--bg2)}
.sec-head h2{font-size:clamp(1.55rem,1rem + 1.7vw,2.15rem)}
.cta-banda h2{font-size:clamp(1.4rem,1rem + 1.4vw,2rem)}
.card .ic{background:var(--tom)}
.hero::after{background:var(--bg)}
.cat-topo::after{background:var(--bg)}

/* banner principal */
.hero{position:relative;overflow:hidden;display:flex;align-items:center;min-height:clamp(540px,50vw,700px);padding:clamp(56px,7vw,96px) 0 clamp(84px,9vw,120px);
  background:var(--bg) url(../img/hero.jpg) right center/cover no-repeat}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(244,244,245,.93) 30%,rgba(244,244,245,.35) 50%,rgba(244,244,245,0) 64%)}
.hero .wrap{position:relative;z-index:1;display:block;width:100%}
.hero-txt{max-width:min(560px,100%)}
.hero h1{font-size:clamp(2.15rem,1.1rem + 3.5vw,3.8rem);line-height:1.08;color:var(--texto);margin:0 0 18px}
.hero h1 u{text-decoration:none;color:inherit;padding-bottom:.04em;background:linear-gradient(var(--vinho),var(--vinho)) 0 96%/100% .11em no-repeat;animation:traco 1s .45s cubic-bezier(.2,.7,.2,1) both}
@keyframes traco{from{background-size:0 .11em}to{background-size:100% .11em}}
.hero p{font-size:clamp(1rem,.9rem + .4vw,1.15rem);color:#4a4a50;max-width:46ch}
.hero .acoes{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:clamp(22px,3vw,32px)}
.btn-lg{height:60px;padding:0 32px;font-size:15px;border-radius:99px}
.btn-cta{display:inline-flex;align-items:center;gap:12px;padding:7px 22px 7px 7px;border-radius:99px;background:#fff;color:var(--texto);border:1px solid rgba(78,34,32,.18);box-shadow:0 8px 24px rgba(40,20,20,.10);transition:transform .2s,box-shadow .2s,background .2s,color .2s,border-color .2s;min-height:60px}
.btn-cta .ic{width:46px;height:46px;border-radius:50%;background:var(--vinho);color:#fff;display:grid;place-items:center;flex:none;transition:background .2s,color .2s}
.btn-cta .tx{display:flex;flex-direction:column;line-height:1.2;text-align:left}
.btn-cta b{font-size:15px;font-weight:600;color:var(--vinho);transition:color .2s}
.btn-cta small{font-size:12px;color:#6a6a72;transition:color .2s}
.btn-cta .seta{font-size:20px;color:var(--vinho);margin-left:2px;transition:transform .2s,color .2s}
.btn-cta:hover{background:var(--vinho);border-color:var(--vinho);transform:translateY(-2px);box-shadow:0 14px 30px rgba(78,34,32,.30)}
.btn-cta:hover b,.btn-cta:hover small,.btn-cta:hover .seta{color:#fff}
.btn-cta:hover .ic{background:#fff;color:var(--vinho)}
.btn-cta:hover .seta{transform:translateX(5px)}
.hero-nota{display:flex;align-items:center;gap:8px;margin-top:18px;font-size:13px;color:#6a6a72}
.hero-nota::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--vinho);box-shadow:0 0 0 0 rgba(78,34,32,.5);animation:pulsa 2s infinite}
@keyframes pulsa{70%{box-shadow:0 0 0 9px rgba(78,34,32,0)}100%{box-shadow:0 0 0 0 rgba(78,34,32,0)}}

/* grades fluidas */
.grid3{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.passos{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}
.cats{grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr))}
.produtos{grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr))}
.sobre,.contato{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(28px,5vw,56px)}
footer .wrap{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
section.sec.escura{--c:var(--corte);clip-path:polygon(0 var(--c),100% 0,100% calc(100% - var(--c)),0 100%);margin:calc(var(--c) * -1) 0;padding:clamp(90px,11vw,130px) 0}
#sobre{padding-top:clamp(96px,10vw,140px)}
#clientes{padding-top:clamp(96px,11vw,150px)}
.passos div::after{display:block}

@media(max-width:900px){
  .passos div::after{display:none}
  header.site nav{box-shadow:0 14px 24px rgba(40,20,20,.10)}
  header.site nav a{padding:12px 0}
  .menu-btn{width:44px;height:44px}
}
@media(max-width:1000px){
  .hero{display:block;min-height:0;padding:clamp(40px,10vw,64px) 0 calc(88vw + 24px);background:var(--bg) url(../img/hero-m.jpg) center bottom/100% auto no-repeat}
  .hero::before{inset:auto 0 0 0;height:125vw;background:linear-gradient(180deg,var(--bg) 0,var(--bg) 4%,rgba(244,244,245,.7) 20%,rgba(244,244,245,0) 46%)}
  .hero::after{height:34px}
  .hero-txt{max-width:none}
  .hero .acoes{flex-direction:column;align-items:stretch}
  .hero .acoes .btn-lg,.hero .acoes .btn-cta{width:100%;justify-content:center}
  .btn-cta .seta{margin-left:auto}
  .hero-nota{justify-content:flex-start}
}
@media(max-width:600px){
  .topo .wrap span:last-child{display:none}
  .produtos{grid-template-columns:repeat(2,1fr);gap:12px}
  .prod .info{padding:10px 12px 12px}
  .prod h3{font-size:13.5px}
  .btn-sm{height:40px}
  .cta-banda .acoes{width:100%}.cta-banda .acoes .btn{flex:1 1 100%}
  .gaveta{width:100%}
}
@media(min-width:1500px){.wrap{max-width:1280px}}

/* campo isca contra robôs (invisível para pessoas) */
.isca{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

/* ===== v4: início em bordô com texto bege, botões compactos ===== */
:root{--bege:#EFE8DF;--raio:16px}
.topo{background:var(--vinho);color:var(--bege)}
header.site,header.site.rolou{background:var(--vinho);border-bottom:1px solid rgba(239,232,223,.12)}
header.site.rolou{box-shadow:0 8px 24px rgba(40,12,10,.35)}
header.site nav a{color:var(--bege);opacity:.88}
header.site nav a:hover,header.site nav a.ativo{color:#fff;opacity:1;border-color:transparent}
header.site nav a::after{background:var(--bege)}
.btn-orc{background:var(--bege);color:var(--vinho)}
.btn-orc:hover{background:#fff}
.btn-orc .n{background:var(--vinho);color:var(--bege)}
.menu-btn{background:transparent;border-color:rgba(239,232,223,.45);color:var(--bege)}
@media(max-width:900px){header.site nav{background:var(--vinho);border-bottom:1px solid rgba(239,232,223,.15)}}

/* banner */
.hero{background:var(--vinho) url(../img/hero.jpg) right center/cover no-repeat;min-height:clamp(460px,44vw,620px);padding:clamp(48px,6vw,80px) 0 clamp(80px,8vw,104px)}
.hero::before{background:linear-gradient(90deg,var(--vinho) 0%,rgba(78,34,32,.96) 28%,rgba(78,34,32,.35) 47%,rgba(78,34,32,0) 60%)}
.hero::after{background:var(--bege)}
.hero h1{color:var(--bege);font-weight:400;letter-spacing:-.015em;margin:0}
.hero h1 b{font-weight:700;color:var(--bege)}
.hero h1 u{text-decoration:none;color:inherit;padding-bottom:.06em;background:linear-gradient(var(--bege),var(--bege)) 0 98%/100% .07em no-repeat;animation:traco2 1s .45s cubic-bezier(.2,.7,.2,1) both}
@keyframes traco2{from{background-size:0 .07em}to{background-size:100% .07em}}
.hero .acoes{margin-top:clamp(24px,3vw,34px);gap:12px}
.hero .btn{height:46px;padding:0 24px;font-size:14px;border-radius:var(--raio)}
.btn-bege{background:var(--bege);color:var(--vinho)}
.btn-bege:hover{background:#fff;color:var(--vinho-h)}
.btn-cta{padding:5px 18px 5px 5px;min-height:46px;border-radius:var(--raio);background:transparent;border:1px solid rgba(239,232,223,.55);box-shadow:none;gap:10px}
.btn-cta .ic{width:36px;height:36px;border-radius:12px;background:var(--bege);color:var(--vinho)}
.btn-cta .ic svg{width:19px;height:19px}
.btn-cta b{font-size:14px;color:var(--bege)}
.btn-cta small{font-size:11.5px;color:rgba(239,232,223,.82)}
.btn-cta .seta{font-size:17px;color:var(--bege)}
.btn-cta:hover{background:var(--bege);border-color:var(--bege);box-shadow:0 10px 24px rgba(30,8,6,.35)}
.btn-cta:hover b,.btn-cta:hover small,.btn-cta:hover .seta{color:var(--vinho)}
.btn-cta:hover .ic{background:var(--vinho);color:var(--bege)}

/* faixa que corre: bege com texto bordô */
.faixa{background:var(--bege);color:var(--vinho)}
.faixa-in i{color:rgba(78,34,32,.45)}

/* painel Meu orçamento: dois botões */
#orc-rod{grid-template-columns:1fr 1fr;gap:10px}
#orc-rod .btn{height:46px;padding:0 12px;font-size:14px;border-radius:var(--raio);gap:8px}
#orc-rod .btn-wa{color:var(--vinho);border-color:var(--vinho)}
#orc-rod .btn-wa:hover{background:var(--vinho);color:#fff}
#orc-rod .btn-wa svg{flex:none}

@media(max-width:1000px){
  .hero{background:var(--vinho) url(../img/hero-m.jpg) center bottom/100% auto no-repeat;min-height:0;padding:clamp(36px,9vw,56px) 0 calc(86vw + 20px)}
  .hero::before{inset:auto 0 0 0;height:125vw;background:linear-gradient(180deg,var(--vinho) 0,var(--vinho) 4%,rgba(78,34,32,.7) 20%,rgba(78,34,32,0) 46%)}
  .hero .acoes{flex-direction:row;flex-wrap:wrap;align-items:stretch}
  .hero .acoes .btn,.hero .acoes .btn-cta{width:auto;flex:1 1 200px;justify-content:center}
}
@media(max-width:420px){
  #orc-rod{grid-template-columns:1fr}
  .hero .acoes .btn,.hero .acoes .btn-cta{flex:1 1 100%}
}

/* ===== v5: banner com foto de produtos (img/hero-foto.jpg) ===== */
.hero{display:block;min-height:0;height:min(56vw,860px);min-height:clamp(480px,56vw,860px);
  padding:clamp(34px,4.4vw,68px) 0 0;
  background:#2c1a13 url(../img/hero-foto.jpg) center bottom/cover no-repeat}
.hero::before{inset:0;height:auto;
  background:
    linear-gradient(180deg,rgba(78,34,32,.94) 0%,rgba(78,34,32,.78) 24%,rgba(78,34,32,.28) 44%,rgba(78,34,32,0) 58%),
    linear-gradient(90deg,rgba(78,34,32,.55) 0%,rgba(78,34,32,0) 60%)}
.hero .wrap{width:100%}
.hero-txt{max-width:min(760px,100%)}
.hero h1{font-size:clamp(1.9rem,.9rem + 2.9vw,3.35rem);line-height:1.1;text-shadow:0 2px 18px rgba(40,12,10,.35)}

@media(max-width:1000px){
  .hero{height:auto;min-height:0;padding:clamp(34px,8vw,52px) 0 calc(58vw + 18px);
    background:var(--vinho) url(../img/hero-foto.jpg) center bottom/100% auto no-repeat}
  .hero::before{inset:auto 0 0 0;height:calc(58vw + 70px);
    background:linear-gradient(180deg,var(--vinho) 0,rgba(78,34,32,.55) 40%,rgba(78,34,32,0) 100%)}
}

/* ===== v6: banner mais escuro (contraste) e botões do WhatsApp em verde ===== */
:root{--wpp:#25D366;--wpp-h:#1EBE5B;--wpp-tx:#06361A}
.hero::before{
  background:
    linear-gradient(180deg,rgba(40,16,14,.95) 0%,rgba(52,22,20,.86) 28%,rgba(60,26,24,.46) 50%,rgba(60,26,24,.12) 68%,rgba(60,26,24,0) 100%),
    linear-gradient(90deg,rgba(34,13,11,.6) 0%,rgba(34,13,11,.22) 52%,rgba(34,13,11,0) 80%),
    linear-gradient(rgba(20,8,7,.12),rgba(20,8,7,.12))}
.hero h1{text-shadow:0 2px 22px rgba(20,6,5,.55)}
@media(max-width:1000px){
  .hero::before{
    background:linear-gradient(180deg,var(--vinho) 0,rgba(78,34,32,.55) 38%,rgba(78,34,32,0) 100%),linear-gradient(rgba(20,8,7,.18),rgba(20,8,7,.18))}
}

/* botões do WhatsApp */
.btn-wpp,#orc-rod .btn-wa,#cta-wpp{background:var(--wpp);border:1px solid var(--wpp);color:var(--wpp-tx);font-weight:600}
.btn-wpp:hover,#orc-rod .btn-wa:hover,#cta-wpp:hover{background:var(--wpp-h);border-color:var(--wpp-h);color:var(--wpp-tx)}
.btn-wpp svg,#orc-rod .btn-wa svg{fill:currentColor}
.btn-cta{background:var(--wpp);border-color:var(--wpp)}
.btn-cta b{color:var(--wpp-tx)}
.btn-cta small{color:rgba(6,54,26,.82)}
.btn-cta .seta{color:var(--wpp-tx)}
.btn-cta .ic{background:#fff;color:#128C4A}
.btn-cta:hover{background:var(--wpp-h);border-color:var(--wpp-h);box-shadow:0 10px 24px rgba(10,60,30,.4)}
.btn-cta:hover b,.btn-cta:hover small,.btn-cta:hover .seta{color:var(--wpp-tx)}
.btn-cta:hover .ic{background:#fff;color:#128C4A}
.wpp{background:var(--wpp);border:2px solid #fff;color:#fff}
.wpp:hover{background:var(--wpp-h)}
.wpp svg{width:30px;height:30px;fill:#fff}

/* ===== v7: texto branco nos botões verdes do WhatsApp ===== */
:root{--wpp:#1DAA57;--wpp-h:#179A4D;--wpp-tx:#fff}
.btn-cta small{color:rgba(255,255,255,.92)}
.btn-cta:hover small{color:rgba(255,255,255,.95)}
.btn-wpp,#orc-rod .btn-wa,#cta-wpp{color:#fff}
.btn-wpp:hover,#orc-rod .btn-wa:hover,#cta-wpp:hover{color:#fff}
.btn-cta .ic{color:var(--wpp)}
.btn-cta:hover .ic{color:var(--wpp-h)}

/* ===== v8: frase maior, botões menores e mais abaixo, faixa de contatos em bege ===== */
.topo{background:var(--bege);color:var(--vinho)}
.topo .wrap span{color:var(--vinho);font-weight:500}
header.site{border-top:0}

.hero{height:min(61vw,900px);min-height:clamp(540px,61vw,900px);padding-top:clamp(48px,6.4vw,100px)}
.hero-txt{max-width:min(920px,100%)}
.hero h1{font-size:clamp(2.35rem,.8rem + 4vw,4.3rem);line-height:1.08}
.hero .acoes{margin-top:clamp(26px,3.6vw,50px);gap:10px}
.hero .btn{height:40px;padding:0 20px;font-size:13px}
.btn-cta{min-height:40px;padding:4px 16px 4px 4px;gap:9px}
.btn-cta .ic{width:30px;height:30px;border-radius:10px}
.btn-cta .ic svg{width:17px;height:17px}
.btn-cta b{font-size:13px}
.btn-cta small{font-size:10.5px}
.btn-cta .seta{font-size:15px}

@media(max-width:1000px){
  .hero{height:auto;min-height:0;padding:clamp(40px,10vw,64px) 0 calc(58vw + 18px)}
  .hero h1{font-size:clamp(2.1rem,1.2rem + 4.6vw,3rem)}
  .hero .acoes{margin-top:clamp(26px,6vw,36px)}
}

/* ===== v9: "Quem atendemos" distribuído e mini passo a passo no catálogo ===== */
.publico{justify-content:center;align-items:flex-start;gap:16px 20px;padding:10px 0 46px}
.publico span{font-size:clamp(13.5px,.3vw + 12.5px,16px);padding:13px 24px;box-shadow:0 4px 14px rgba(40,16,14,.06)}
.publico span:nth-child(1){translate:0 6px;rotate:-1.5deg}
.publico span:nth-child(2){translate:0 40px;padding:16px 30px;background:var(--vinho);border-color:var(--vinho);color:var(--bege)}
.publico span:nth-child(3){translate:0 -6px;rotate:1.5deg}
.publico span:nth-child(4){translate:0 30px;background:var(--bege);border-color:var(--bege);color:var(--vinho)}
.publico span:nth-child(5){translate:0 14px;padding:16px 30px;rotate:1deg}
.publico span:nth-child(6){translate:0 -2px;background:var(--vinho);border-color:var(--vinho);color:var(--bege)}
.publico span:nth-child(7){translate:0 36px;rotate:-1.5deg}
.publico span:nth-child(8){translate:0 8px;padding:16px 30px;background:var(--bege);border-color:var(--bege);color:var(--vinho)}
.publico span:hover{rotate:0deg}
@media(max-width:600px){
  .publico{gap:12px 12px;padding-bottom:30px}
  .publico span{padding:11px 18px}
  .publico span:nth-child(odd){translate:0 0}
  .publico span:nth-child(even){translate:0 14px}
}

.mini-passos{list-style:none;counter-reset:mp;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px clamp(14px,2vw,24px);margin-top:clamp(18px,2.4vw,26px);max-width:940px}
.mini-passos li{counter-increment:mp;position:relative;padding:2px 0 0 42px;font-size:13px;line-height:1.4;color:rgba(239,232,223,.86)}
.mini-passos li::before{content:counter(mp);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:var(--bege);color:var(--vinho);display:grid;place-items:center;font-weight:700;font-size:14px}
.mini-passos b{display:block;color:var(--bege);font-size:14px;font-weight:600;margin-bottom:1px}
.mini-passos span{display:block}

/* ajuste: deslocamentos menores que o espaço entre as linhas (sem sobreposição) */
.publico{gap:46px 20px;padding:14px 0 40px}
.publico span:nth-child(1){translate:0 4px}
.publico span:nth-child(2){translate:0 26px}
.publico span:nth-child(3){translate:0 -8px}
.publico span:nth-child(4){translate:0 20px}
.publico span:nth-child(5){translate:0 10px}
.publico span:nth-child(6){translate:0 -6px}
.publico span:nth-child(7){translate:0 24px}
.publico span:nth-child(8){translate:0 6px}
@media(max-width:600px){
  .publico{gap:34px 12px}
  .publico span:nth-child(even){translate:0 12px}
}

/* ===== v10: textos sobre bordô sempre em bege + "Quem atendemos" em 2 linhas alinhadas ===== */
.btn-vinho,.btn-vinho:hover{color:var(--bege)}
.btn-pet:hover{color:var(--bege)}
header.site nav a:hover,header.site nav a.ativo{color:var(--bege)}
.lateral button.ativo,.chips-mob button.ativo{color:var(--bege)}
.aviso{color:var(--bege)}
.cta-banda,.cta-banda h2{color:var(--bege)}
.cta-banda p{color:rgba(239,232,223,.9)}
.cat-topo,.cat-topo h1,.cat-topo .eyebrow{color:var(--bege)}
.cat-topo .eyebrow::before{background:var(--bege)}
footer{color:var(--bege)}
footer h4{color:var(--bege)}
footer a:hover{color:var(--bege)}
footer .copy{color:rgba(239,232,223,.72);border-top-color:rgba(239,232,223,.2)}

/* Quem atendemos: todas do mesmo tamanho, fundo branco com sombra, 2 linhas, a de baixo deslocada para o lado */
.publico{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 22px;justify-content:stretch;align-items:stretch;padding:12px clamp(0px,5vw,72px) 36px 0}
.publico span:nth-child(n){translate:none;rotate:none;display:flex;align-items:center;justify-content:center;text-align:center;
  min-height:58px;padding:12px 18px;font-size:clamp(13.5px,.3vw + 12.5px,15.5px);font-weight:500;
  background:#fff;color:var(--texto);border:0;border-radius:var(--raio);box-shadow:0 8px 22px rgba(30,12,10,.16)}
.publico span:nth-child(n+5){translate:clamp(0px,5vw,72px) 0}
.publico span:nth-child(n):hover{translate:none;rotate:none;transform:translateY(-3px);background:var(--vinho);color:var(--bege)}
.publico span:nth-child(n+5):hover{translate:clamp(0px,5vw,72px) 0}
@media(max-width:860px){
  .publico{grid-template-columns:repeat(2,minmax(0,1fr));padding-right:0}
  .publico span:nth-child(n+5){translate:none}
  .publico span:nth-child(4n+3),.publico span:nth-child(4n+4){translate:16px 0}
  .publico span:nth-child(4n+3):hover,.publico span:nth-child(4n+4):hover{translate:16px 0}
}

/* "Meu orçamento" (fundo bege no cabeçalho) mantém texto bordô */
.btn.btn-orc,.btn.btn-orc:hover{color:var(--vinho)}

/* ===== v11: Quem atendemos — pílulas do tamanho do texto, 2 fileiras, a de baixo deslocada ===== */
.publico{display:flex;flex-direction:column;gap:20px;padding:12px 0 32px;grid-template-columns:none}
.publico .linha{display:flex;flex-wrap:wrap;gap:16px 18px;align-items:center}
.publico .linha:nth-child(2){margin-left:clamp(0px,6vw,96px)}
.publico span:nth-child(n){translate:none;rotate:none;display:inline-flex;align-items:center;justify-content:center;
  width:auto;min-height:0;padding:15px 30px;border-radius:999px;white-space:nowrap;text-align:center;
  font-size:clamp(14px,.3vw + 13px,16px);font-weight:500;background:#fff;color:var(--texto);border:0;box-shadow:0 8px 22px rgba(30,12,10,.16)}
.publico span:nth-child(n):hover,.publico span:nth-child(n+5):hover{translate:none;transform:translateY(-3px);background:var(--vinho);color:var(--bege)}
@media(max-width:860px){
  .publico .linha:nth-child(2){margin-left:clamp(0px,5vw,40px)}
  .publico span:nth-child(n){padding:13px 24px}
}
@media(max-width:600px){
  .publico{gap:14px}
  .publico .linha{gap:12px}
  .publico .linha:nth-child(2){margin-left:18px}
  .publico span:nth-child(n){padding:12px 20px;font-size:14px}
}

/* ===== v12: balões menores, centralizados, 2 linhas ===== */
.publico{align-items:center;gap:14px;padding:8px 0 24px}
.publico .linha{justify-content:center;gap:12px 14px;width:100%}
.publico .linha:nth-child(2){margin-left:0}
.publico span:nth-child(n){padding:10px 22px;font-size:clamp(12.5px,.2vw + 12px,14.5px);box-shadow:0 6px 16px rgba(30,12,10,.15)}
@media(max-width:860px){
  .publico .linha:nth-child(2){margin-left:0}
  .publico span:nth-child(n){padding:9px 18px}
}
@media(max-width:600px){
  .publico{gap:10px}
  .publico .linha{gap:8px 8px}
  .publico .linha:nth-child(2){margin-left:0}
  .publico span:nth-child(n){padding:8px 14px;font-size:12.5px}
}

/* ===== v13: 10 nichos em 2 linhas — a área das tags pode ocupar mais largura que o texto da seção ===== */
.publico{margin-left:calc((100% - min(100vw - 48px,1320px)) / 2);margin-right:calc((100% - min(100vw - 48px,1320px)) / 2)}
.publico span:nth-child(n){padding:9px 19px;font-size:clamp(12.5px,.2vw + 11.8px,14px)}
@media(max-width:900px){.publico{margin-left:0;margin-right:0}}

/* cartão de texto na seção de números (mesma altura dos demais) */
.numeros b.txt{font-size:clamp(1.15rem,.6rem + 1.3vw,1.55rem);line-height:1.15;letter-spacing:-.01em;padding:.18em 0 .3em}
