/* Brew Guide pages. Builds on ../assets/site.css */
.nav .brand small{font-weight:400;color:var(--soft);margin-left:6px;font-size:13px}
.nav .links a.on{color:var(--ink);font-weight:600}
.tool{background:var(--card);border-radius:var(--r);box-shadow:var(--shadow);padding:34px 36px;margin-bottom:22px}
.tool h2.sec{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-ink);margin:0 0 14px}
.form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--soft);text-transform:uppercase;letter-spacing:.05em;min-width:0}
.form select{font:inherit;font-size:16px;text-transform:none;letter-spacing:0;color:var(--ink);font-weight:400;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;width:100%}
.form select:disabled{color:var(--soft);background:#fafafa}
.row2{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-start;margin-top:20px}
.row2 .lbl{font-size:13px;font-weight:600;color:var(--soft);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.notes{display:flex;flex-wrap:wrap;gap:6px;max-width:640px}
.notes .chip{background:#e8e8ed;font-size:13px;padding:7px 14px}
.notes .chip.on{background:var(--accent);color:#fff;box-shadow:none}
.hint{font-size:13px;color:var(--soft);margin-top:8px}
.divider{height:1px;background:#ececf0;margin:26px 0}
.res-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.res-head h2{font-size:30px;font-weight:700;letter-spacing:-.025em;line-height:1.15;margin:4px 0 8px}
.res-head .fam{color:var(--muted);font-size:16px;max-width:42em}
.res-head .btn{font-size:14px;padding:7px 16px;flex:none}
table.rt{width:100%;border-collapse:collapse;font-size:17px;margin:4px 0 10px}
table.rt th{text-align:left;font-weight:500;color:var(--muted);padding:11px 12px 11px 0;width:38%;border-bottom:1px solid #f0f0f2;vertical-align:top}
table.rt td{padding:11px 0;border-bottom:1px solid #f0f0f2;font-weight:600}
table.rt tr:last-child th,table.rt tr:last-child td{border-bottom:0}
table.rt tr:last-child td{color:var(--accent-ink);font-size:19px}
.gnote{font-size:15px;color:var(--muted);background:var(--bg);border-radius:12px;padding:12px 14px;margin:8px 0 6px}
.callout{border-radius:12px;padding:14px 16px;margin:10px 0;font-size:15px}
.callout.warn{background:#fff6e5;color:#7a4b00}
#result h3{font-size:19px;font-weight:700;letter-spacing:-.015em;margin:26px 0 8px}
ul.why{margin:0 0 0 20px}ul.why li{margin-bottom:6px;font-size:16px}
ol.steps2{margin:0 0 0 22px}ol.steps2 li{margin-bottom:8px;font-size:16px}ol.steps2 b{display:inline-block;min-width:3.2em;color:var(--accent-ink)}
table.fix{width:100%;border-collapse:collapse;font-size:15px;background:var(--bg);border-radius:12px;overflow:hidden}
table.fix th{text-align:left;font-size:12px;color:var(--soft);font-weight:600;padding:9px 12px;text-transform:uppercase;letter-spacing:.04em}
table.fix td{padding:9px 12px;border-top:1px solid #e6e6ea}
.fine{font-size:13px;color:var(--soft);margin-top:16px}
.gear h3{font-size:24px;font-weight:700;letter-spacing:-.02em;margin-bottom:14px}
.gear-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.gear .g{background:var(--bg);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:6px;color:inherit;transition:transform .25s}
.gear .g:hover{text-decoration:none;transform:scale(1.015)}
.gear .g b{font-size:17px}.gear .g span{font-size:14px;color:var(--muted)}.gear .g em{font-style:normal;font-size:14px;color:var(--accent-ink);margin-top:auto}
.beans{display:flex;justify-content:space-between;align-items:center;gap:18px;background:var(--accent-soft);border-radius:16px;padding:18px 20px;margin-top:16px}
.beans b{display:block;font-size:17px}.beans span{font-size:14px;color:var(--muted)}
.pages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:8px 0 60px}
.pages a{background:var(--card);border-radius:18px;box-shadow:var(--shadow);padding:22px;color:inherit}
.pages a:hover{text-decoration:none;transform:scale(1.01)}
.pages b{display:block;font-size:19px;margin-bottom:4px}.pages span{font-size:15px;color:var(--muted)}
.faq{max-width:820px;margin:0 auto 70px}
.faq h2{font-size:34px;font-weight:700;letter-spacing:-.025em;text-align:center;margin-bottom:22px}
.faq details{background:var(--card);border-radius:16px;box-shadow:var(--shadow);padding:18px 22px;margin-bottom:10px}
.faq summary{font-weight:600;cursor:pointer}
.faq p{color:var(--muted);margin-top:10px;font-size:16px}
.disclose{font-size:12px;color:var(--soft);margin-top:6px}
@media(max-width:860px){.form{grid-template-columns:1fr 1fr}.gear-grid,.pages{grid-template-columns:1fr}.tool{padding:22px 18px}.res-head{flex-direction:column}.res-head h2{font-size:24px}.beans{flex-direction:column;align-items:flex-start}}
@media(max-width:520px){.form{grid-template-columns:1fr}}
@media(max-width:860px){.nav .links a:not(.btn){display:inline}.nav .links{gap:14px}.nav .brand small{display:none}}
.pages{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:860px){.pages{grid-template-columns:1fr}}
.fb{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:24px;align-items:start}
.fb h3{font-size:24px;font-weight:700;letter-spacing:-.02em;margin-bottom:6px}.fb p{color:var(--muted);font-size:16px}
.fb-form{display:flex;flex-direction:column;gap:10px}
.fb-form select,.fb-form textarea,.fb-form input{font:inherit;font-size:16px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;width:100%;color:var(--ink)}
.fb-form .btn{align-self:flex-start}
@media(max-width:860px){.fb{grid-template-columns:1fr}}
