
:root{--ink:#152119;--muted:#667168;--paper:#fbfaf6;--card:#fff;--sage:#dfe9df;--sage2:#edf3ed;--accent:#2d5b41;--accent2:#173d2a;--gold:#d6b469;--line:#e5e1d7;--shadow:0 10px 34px rgba(22,43,30,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:17px/1.72 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}
a{color:var(--accent);text-underline-offset:3px}img{max-width:100%}.wrap{max-width:1180px;margin:auto;padding:0 22px}
.site-header{background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40;backdrop-filter:blur(10px)}
.navbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;min-height:74px}.brand{font-family:Georgia,serif;font-weight:800;font-size:25px;color:var(--ink);text-decoration:none;white-space:nowrap}.main-nav{text-align:center}.main-nav a{color:var(--ink);text-decoration:none;margin:0 10px;font-size:14px;font-weight:650}.header-cta{background:var(--accent);color:#fff;text-decoration:none;padding:10px 16px;border-radius:999px;font-weight:800;font-size:14px;white-space:nowrap}
.hero{padding:64px 0 46px;background:linear-gradient(140deg,#f8f1df 0%,#eef4ee 54%,#f8f7f2 100%);border-bottom:1px solid var(--line)}.hero-inner{max-width:900px}.kicker{letter-spacing:.14em;text-transform:uppercase;font-weight:800;font-size:12px;color:var(--accent)}
h1,h2,h3{font-family:Georgia,serif;line-height:1.16}h1{font-size:clamp(40px,6vw,68px);margin:.16em 0 .24em;letter-spacing:-.025em}h2{font-size:34px;margin:1.75em 0 .55em}h3{font-size:23px}.lede{font-size:21px;color:#435148;max-width:780px}
.crumbs{font-size:14px;color:var(--muted);padding-top:18px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:48px;padding:34px 0 78px}.article{min-width:0}.article p{max-width:800px}.article ul{max-width:760px}.article li{margin:.45em 0}
.card,.cta,.note,.toc{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px;margin:24px 0;box-shadow:var(--shadow)}.note{background:#fffaf0}.toc{background:var(--sage2)}.toc a{display:inline-block;margin:5px 14px 5px 0}
.cta{background:var(--sage);border-color:#c9d8c9}.button{display:inline-block;background:var(--accent);color:#fff!important;text-decoration:none;padding:13px 19px;border-radius:999px;font-weight:800;margin:7px 8px 7px 0}.button:hover,.header-cta:hover{background:var(--accent2)}.button.secondary{background:#fff;color:var(--accent)!important;border:1px solid var(--accent)}
.sidebar .merchant{position:sticky;top:96px}.merchant ul{padding-left:19px}.disclosure{font-size:13px;color:var(--muted)}.sourcebox{font-size:14px;background:#f7f7f3;border-left:4px solid var(--gold);padding:16px 18px;margin:24px 0}
.linkgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0}.linkcard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;text-decoration:none;color:var(--ink);box-shadow:0 6px 20px rgba(20,40,27,.05)}.linkcard strong{display:block;font-family:Georgia,serif;font-size:20px;margin-bottom:5px}.linkcard span{color:var(--muted);font-size:14px}
.tablewrap{overflow:auto}.compare{width:100%;border-collapse:collapse;background:#fff}.compare th,.compare td{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.compare th{background:var(--sage2)}
footer{background:#152119;color:#dce5de;padding:44px 0}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}footer a{color:#fff}.mobile-cta{display:none;position:fixed;left:12px;right:12px;bottom:12px;background:var(--accent);color:white!important;text-decoration:none;text-align:center;padding:14px;border-radius:999px;font-weight:800;z-index:50;box-shadow:0 10px 35px rgba(0,0,0,.25)}
.promo{position:fixed;right:18px;bottom:18px;width:min(380px,calc(100% - 36px));background:#fff;border:1px solid #d9d0bb;border-radius:20px;padding:20px;box-shadow:0 20px 70px rgba(0,0,0,.22);z-index:45}.promo button{float:right;border:0;background:none;font-size:22px;cursor:pointer}.promo h3{margin:.2em 0}.promo.hide{display:none}
@media(max-width:900px){.navbar{grid-template-columns:1fr auto}.main-nav{display:none}.layout{grid-template-columns:1fr}.sidebar .merchant{position:static}.footgrid{grid-template-columns:1fr}.promo{display:none}.mobile-cta{display:block}body{padding-bottom:72px}}
@media(max-width:560px){.header-cta{font-size:12px;padding:9px 12px}.linkgrid{grid-template-columns:1fr}.hero{padding-top:42px}h2{font-size:30px}}
