:root{--cor:#c1121f;--esc:#1d1d24;--claro:#f6f6f8}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,Arial,sans-serif;color:var(--esc);background:#fff}
a{color:inherit}
.topo{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:24px;padding:14px 5%;background:var(--esc);color:#fff}
.marca{font-weight:800;font-size:1.4rem;text-decoration:none}.marca span{color:#ff6b6b}
.topo nav{display:flex;gap:18px;flex:1}.topo nav a{text-decoration:none}
.btn,.btn-carrinho{background:var(--cor);color:#fff;border:0;padding:10px 18px;border-radius:8px;cursor:pointer;font-weight:600;text-decoration:none;display:inline-block}
.btn-sec{background:transparent;border:2px solid var(--cor);color:var(--cor)}
.hero{display:flex;gap:40px;align-items:center;padding:60px 5%;background:var(--claro)}
.hero h1{font-size:2.6rem;margin:0 0 12px}.hero img{width:40%;border-radius:14px}
.secao{padding:50px 5%}.alt{background:var(--claro)}
.filtros{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.filtros button{border:1px solid #767676;background:#fff;padding:6px 14px;border-radius:20px;cursor:pointer}
.filtros button.ativo{background:var(--esc);color:#fff}
.grelha{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px}
.produto{border:1px solid #eee;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.produto img{width:100%;aspect-ratio:1;object-fit:cover}
.produto .info{padding:14px;display:flex;flex-direction:column;gap:6px;flex:1}
.produto h3{margin:0;font-size:1.05rem}.preco{font-weight:800;font-size:1.2rem}
.tag{font-size:.75rem;color:#595959}.peso{font-size:.8rem;color:#555}
.produto input{padding:6px;border:1px solid #ccc;border-radius:6px}
.produto .btn{margin-top:auto}
.form{display:flex;flex-direction:column;gap:10px;max-width:520px}
.form input,.form textarea{padding:10px;border:1px solid #ccc;border-radius:8px;font:inherit}
.cartoes{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.cartao{background:var(--claro);padding:18px;border-radius:12px}
footer{text-align:center;padding:24px;background:var(--esc);color:#bbb}
.carrinho{position:fixed;top:0;right:-400px;width:380px;max-width:100%;height:100%;background:#fff;box-shadow:-4px 0 20px #0003;transition:right .3s;z-index:10;display:flex;flex-direction:column}
.carrinho.aberto{right:0}
.car-topo{display:flex;justify-content:space-between;align-items:center;padding:0 18px;border-bottom:1px solid #eee}
.car-topo button{border:0;background:none;font-size:1.2rem;cursor:pointer}
#itens{flex:1;overflow:auto;padding:12px 18px}
.item{display:flex;gap:10px;align-items:center;margin-bottom:12px}.item img{width:54px;height:54px;object-fit:cover;border-radius:6px}
.item div{flex:1}.item button{border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer}
.car-fim{padding:18px;border-top:1px solid #eee;display:flex;flex-direction:column;gap:8px}
.nota{font-size:.8rem;color:#666;margin:0}
@media(max-width:700px){.hero{flex-direction:column}.hero img{width:100%}.topo nav{display:none}}

.seguir-campos{display:flex;gap:8px;flex-wrap:wrap}.seguir-campos input{flex:1;min-width:180px}
.seguir-res{border:1px solid #eee;border-radius:12px;padding:18px;max-width:700px}
.estado-atual{font-size:1.1rem;font-weight:600;color:var(--cor)}
.etapas{display:flex;list-style:none;padding:0;gap:6px;flex-wrap:wrap}
.etapas li{flex:1;min-width:110px;padding:10px;border-radius:8px;background:#eee;display:flex;flex-direction:column;font-size:.85rem}
.etapas li.feito{background:#b7f0c0}.etapas li.atual{background:var(--cor);color:#fff}

/* --- Acessibilidade e paginas legais --- */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.saltar{position:absolute;left:8px;top:-60px;z-index:100;background:#fff;color:var(--esc);padding:10px 14px;border-radius:6px;font-weight:700}
.saltar:focus{top:8px}
:focus-visible{outline:3px solid #ffbf47;outline-offset:2px;box-shadow:0 0 0 5px var(--esc)}
main:focus{outline:none}
.form label,.campo{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:.9rem}
.form label.check,label.check{flex-direction:row;align-items:flex-start;gap:8px;font-weight:400;font-size:.9rem}
.check input{margin-top:3px;width:18px;height:18px;flex:none}
.form select,.car-fim select{padding:10px;border:1px solid #767676;border-radius:8px;font:inherit}
.form input,.form textarea,.produto input,.seguir-campos input{border-color:#767676}
.seguir-campos{align-items:flex-end}.seguir-campos .campo{flex:1;min-width:180px}
.car-topo h2{font-size:1.2rem}
.rodape{text-align:left;padding:30px 5% 20px;background:var(--esc);color:#ddd}
.rodape a{color:#fff}.rodape h2{font-size:1rem;color:#fff;margin:0 0 8px}
.rodape ul{padding-left:18px;margin:6px 0}.rodape li{margin:4px 0}
.rodape-grelha{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.pequeno{font-size:.8rem;color:#ccc}.rodape .pequeno{margin-top:16px}
.livro{display:inline-block;border:2px solid #fff;padding:6px 10px;border-radius:6px;font-weight:700;text-decoration:none}
.legal{max-width:900px;margin:0 auto;line-height:1.55}.legal h2{margin-top:28px}
.tabela-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}
caption{text-align:left;font-weight:700;margin-bottom:6px}th,td{border:1px solid #bbb;padding:8px;vertical-align:top;text-align:left}th{background:var(--claro)}
.placeholder{background:#fff3b0;padding:0 4px}
.modelo{border:2px dashed #767676;padding:16px;border-radius:8px}
.admin-alerta{background:#fff3b0;padding:10px;border-radius:8px}
@media print{.topo,.rodape,.saltar,button{display:none}}
@media (prefers-reduced-motion:reduce){.carrinho{transition:none}}
.carrinho[hidden]{display:none}
.btn-conta{color:#fff;border:2px solid #fff;padding:8px 14px;border-radius:8px;text-decoration:none;font-weight:600}
.contas{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}
.perigo-forte{background:#8b0000}#c-pedidos>div{margin-bottom:14px}
.topo nav{flex:1}
.legal-id{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px}.legal-id dt{font-weight:700}.legal-id dd{margin:0}
button{font:inherit}.btn,.btn-carrinho{font-weight:600}
.sino{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:#fff;text-decoration:none;font-size:1.3rem;border-radius:8px}
.sino-n{position:absolute;top:2px;right:0;background:#c1121f;color:#fff;font-size:.7rem;font-weight:700;min-width:18px;height:18px;line-height:18px;border-radius:9px;text-align:center;padding:0 4px}
.notifs{list-style:none;padding:0}.notifs li{border:1px solid #ddd;border-radius:10px;padding:10px 14px;margin-bottom:8px;display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.notifs li.nova{border-left:5px solid #c1121f;background:#fff8f0}.notifs small{display:block;color:#555}
.orc-cli{border:1px solid #ddd;border-radius:10px;padding:12px 14px;margin-bottom:10px}
