/* Variant C — "Fieldbook": warm off-white, condensed bold headings, forest accent, left-ruled sections. */
:root{--ink:#22241f;--muted:#5d6258;--paper:#f7f5ef;--card:#fffdf8;--rule:#dcd7c9;--accent:#2f6b3a;--accent-2:#24542d;--flag:#c0562b;--link:#2a5f34}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:16.5px/1.62 "Avenir Next","Avenir","Segoe UI","Helvetica Neue",Arial,sans-serif}
a{color:var(--link)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--flag);outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9}
.frame{max-width:1040px;margin:0 auto;padding:0 20px}.narrow{max-width:760px}
h1,h2,h3{font-family:"Avenir Next Condensed","Arial Narrow","Helvetica Neue",Arial,sans-serif;font-weight:800;line-height:1.08;text-transform:none;letter-spacing:-.005em;text-wrap:balance}
h1{font-size:clamp(34px,6vw,54px);margin:0 0 14px}h2{font-size:clamp(25px,3.4vw,33px);margin:0 0 12px}h3{font-size:21px;margin:24px 0 10px}
.masthead{background:var(--paper);border-top:6px solid var(--accent)}
.masthead .frame{display:flex;align-items:baseline;gap:20px;min-height:66px;flex-wrap:wrap;padding-top:12px}
.wordmark{font:800 22px/1.1 "Avenir Next Condensed","Arial Narrow",Arial,sans-serif;color:var(--ink);text-decoration:none}.wordmark small{display:block;font:500 13px/1.4 inherit;color:var(--muted)}
.menu{display:flex;gap:16px;margin-left:auto;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.menu a{color:var(--ink);text-decoration:none;font-weight:600;border-bottom:2px solid transparent;white-space:nowrap}.menu a:hover{border-color:var(--accent)}
.dial{color:var(--flag);font-weight:800;text-decoration:none;font-size:18px}
.lead{padding:46px 0 36px}.lead h1{max-width:18ch}
.lead.slim{padding:30px 0 12px}
.kicker{display:inline-block;background:var(--accent);color:#fff;font-weight:700;font-size:13px;padding:4px 9px;margin:0 0 12px}
.lede{font-size:19px;max-width:660px;color:#34372f}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 10px}
.go,.alt,button{font-weight:800;font-size:16px;padding:15px 22px;text-decoration:none;border:0;cursor:pointer;font-family:inherit}
.go,button{background:var(--accent);color:#fff}.go:hover,button:hover{background:var(--accent-2)}.alt{background:var(--ink);color:#fff}
.costlink a{font-weight:700;color:var(--flag)}
.block .frame{border-left:4px solid var(--rule);padding-left:22px}.block{padding:26px 0}
.answer{font-size:19px;font-weight:500;margin:0}.block:has(.answer) .frame{border-left-color:var(--accent)}
.cards{list-style:none;padding:0;margin:0;display:grid;gap:10px}.cards li{background:var(--card);border:1px solid var(--rule);padding:14px 16px}
.cards a{font-weight:800;display:block;margin-bottom:3px}.cards span{color:var(--muted);font-size:15px}
details{background:var(--card);border:1px solid var(--rule);padding:12px 14px;margin:8px 0}summary{font-weight:700;cursor:pointer}details p{margin:10px 0 0}
.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:15px;background:var(--card)}
th,td{border-bottom:1px solid var(--rule);padding:10px;text-align:left;vertical-align:top}th{border-bottom:2px solid var(--ink)}caption{text-align:left;color:var(--muted);padding:6px 0}
form{display:grid;gap:8px;max-width:520px}label{font-weight:700;font-size:14px}
input,select{font:16px/1.3 inherit;padding:11px;border:2px solid var(--rule);background:#fff}
button{margin-top:8px}
.base{background:var(--ink);color:#d5d3c8;padding:34px 0 90px;font-size:15px}.base a{color:#fff}
.cols{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.base ul{list-style:none;padding:0;margin:0}.base li{margin:3px 0}
.foot-name{font:800 20px "Avenir Next Condensed","Arial Narrow",Arial,sans-serif;color:#fff;margin:0 0 6px}.foot-h{font-weight:700;color:#fff;margin:0 0 6px}.fine{font-size:13px;color:#a7a596;margin-top:18px}
.stickycall{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr;z-index:5}
.stickycall a{text-align:center;padding:15px 8px;font-weight:800;text-decoration:none;background:var(--flag);color:#fff}
.stickycall a+a{background:var(--accent)}
@media(min-width:860px){.stickycall{display:none}.base{padding-bottom:34px}.cards{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.menu{order:3;width:100%;padding-bottom:10px}.dial{display:none}.block .frame{padding-left:16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
