:root{--ink:#2b1f1a;--marca:#8a3324;--marca2:#5f2016;--creme:#fff8ef;--papel:#fff;--linha:#ecdcc9;--suave:#6b5d54;--ouro:#e0a24a}
*{box-sizing:border-box}body{margin:0;background:var(--creme);color:var(--ink);font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--marca)}.wrap{width:min(900px,100% - 32px);margin:auto}
header{background:var(--papel);border-bottom:1px solid var(--linha)}header .wrap{display:flex;align-items:center;gap:16px;min-height:60px;flex-wrap:wrap}
.logo{font:700 22px Georgia,serif;text-decoration:none;color:var(--ink)}.logo b{color:var(--marca)}
nav.menu{display:flex;gap:6px 14px;flex-wrap:wrap;font-size:14px;padding:8px 0}nav.menu a{text-decoration:none;color:var(--suave)}nav.menu a[aria-current]{color:var(--marca);font-weight:700}
h1{font:700 clamp(30px,5vw,44px)/1.1 Georgia,serif;margin:32px 0 12px;letter-spacing:-.02em}h2{font:700 24px/1.25 Georgia,serif;margin:36px 0 10px}
.intro{font-size:19px;color:var(--suave);margin:0 0 24px}
.calc{background:var(--papel);border:1px solid var(--linha);border-radius:14px;padding:20px;box-shadow:0 6px 0 #f1e2cf}
.calc-t{font:700 18px system-ui,sans-serif;margin:8px 0 4px}.ajuda{font-size:14px;color:var(--suave);margin:0 0 10px}
.rolagem{overflow-x:auto}table{border-collapse:collapse;width:100%}
.ingredientes th{font-size:12px;text-align:left;color:var(--suave);font-weight:600;padding:4px}.ingredientes td{padding:3px}
.ingredientes input{width:100%;min-width:70px}.ingredientes td:first-child input{min-width:170px}.custo-linha{white-space:nowrap;font-size:14px;text-align:right}
input,select{font:inherit;font-size:16px;padding:8px 10px;border:1px solid #d9c6b1;border-radius:8px;background:#fffdfa;color:var(--ink);width:100%}
input:focus,select:focus{outline:3px solid #f3cf95;border-color:var(--marca)}
.rm{border:0;background:none;font-size:22px;color:var(--suave);cursor:pointer;padding:4px 8px}
.add{margin:8px 0 4px;border:1px dashed var(--marca);background:none;color:var(--marca);border-radius:8px;padding:8px 14px;font:600 15px system-ui;cursor:pointer}
.campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px 16px}
label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600;color:var(--suave)}label a{font-weight:400}
.in{display:flex;align-items:center;gap:6px}.so-ret{display:contents}.so-ret[hidden]{display:none}
.resultado{margin-top:18px}.destaque{background:var(--marca);color:#fff;border-radius:12px;padding:14px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;flex-wrap:wrap}
.destaque.sec{background:var(--marca2)}.destaque strong{font:700 30px Georgia,serif}
.quebra td{padding:7px 4px;border-bottom:1px solid var(--linha);font-size:15px}.quebra td:last-child{text-align:right;font-weight:600}.quebra .t td{font-weight:700;background:#fbf1e3}
.quebra.grande td{font-size:18px}.erro{color:#b3261e;font-weight:700}.dica,.nota{font-size:15px;color:var(--suave)}
.tabela th,.tabela td{border-bottom:1px solid var(--linha);padding:8px;text-align:left;font-size:15px}.tabela th{background:#f7eadb}
.passos li{margin-bottom:8px}
.oferta{margin:40px 0;background:#fdf0dc;border:2px solid var(--ouro);border-radius:16px;padding:24px}.oferta h2{margin-top:4px}
.kicker{margin:0;font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--marca)}
.botao{display:inline-block;background:var(--marca);color:#fff;text-decoration:none;font-weight:700;padding:14px 22px;border-radius:10px;margin-top:6px}.botao:hover{background:var(--marca2)}
.faq details{background:var(--papel);border:1px solid var(--linha);border-radius:10px;padding:12px 16px;margin-bottom:8px}.faq summary{font-weight:700;cursor:pointer}
.relacionadas{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;padding:0;list-style:none}.relacionadas a{display:block;background:var(--papel);border:1px solid var(--linha);border-radius:10px;padding:12px;text-decoration:none;font-weight:600}
footer{margin-top:48px;padding:24px 0;border-top:1px solid var(--linha);font-size:14px;color:var(--suave)}
