:root{--ink:#26302a;--muted:#5a665e;--bg:#fbf7ef;--paper:#fffdf8;--soft:#f3ecdc;--mint:#e8efdc;--line:#e2d9c4;--accent:#2d5a3d;--accent-dk:#1f4a33;--clay:#b8322a;--clay-dk:#962720;--sky:#2f6f9f;--sky-soft:#e1eef6;--ochre:#d9a441;--ochre-soft:#f6e8c5;--deep:#1f4a33;--on-deep:#e6efe3;--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--r:16px;--sh:0 2px 6px rgba(45,60,40,.07),0 10px 26px rgba(45,60,40,.08);--sh2:0 4px 10px rgba(45,60,40,.10),0 16px 34px rgba(45,60,40,.14)}
@media(prefers-color-scheme:dark){:root{--ink:#ece8dc;--muted:#aab4a8;--bg:#141a16;--paper:#1b221d;--soft:#1f2822;--mint:#223027;--line:#33403a;--accent:#8ccaa0;--accent-dk:#a9dcbb;--clay:#e0675c;--clay-dk:#ee8479;--sky:#7fb5dc;--sky-soft:#1d2d38;--ochre:#e3b65a;--ochre-soft:#34301f;--deep:#0f1b14;--on-deep:#d9e6d9;--sh:0 2px 6px rgba(0,0,0,.3),0 10px 26px rgba(0,0,0,.28);--sh2:0 4px 10px rgba(0,0,0,.35),0 16px 34px rgba(0,0,0,.4)}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:17.5px/1.7 var(--sans);overflow-x:hidden}
a{color:var(--accent-dk);text-underline-offset:3px}a:hover{color:var(--clay)}
img,svg{max-width:100%}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;color:#000;padding:8px;z-index:99}
/* header */
header.site{background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.bar{display:flex;align-items:center;gap:8px 28px;min-height:72px;flex-wrap:nowrap;padding-top:8px;padding-bottom:8px}
.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--accent-dk);flex:none}
.brand img{display:block;border-radius:12px}
.wm b{display:block;font:700 23px/1.05 var(--serif);letter-spacing:-.2px;color:var(--accent-dk)}
.wm i{display:block;font:700 10px var(--sans);letter-spacing:.34em;color:var(--clay);font-style:normal;margin-top:3px}
.brand.on-dark .wm b{color:#fff}.brand.on-dark .wm i{color:#f2c46b}
nav.primary{display:flex;align-items:center;justify-content:center;gap:0 18px;flex:0 1 auto;flex-wrap:nowrap;min-width:0;overflow-x:auto;scrollbar-width:none}
.bar>.brand{flex:1 1 0;min-width:0}
nav.primary::-webkit-scrollbar{display:none}
nav.primary a{position:relative;white-space:nowrap;color:var(--accent-dk);text-decoration:none;font:600 14px var(--sans);padding:8px 0}
nav.primary a:after{content:"";position:absolute;left:0;right:100%;bottom:3px;height:2px;background:var(--clay);border-radius:2px;transition:right .22s ease}
nav.primary a:hover:after,nav.primary a:focus-visible:after{right:0}
nav.primary a:hover{color:var(--clay)}
.utilgrp{display:flex;justify-content:flex-end;gap:20px;padding-left:22px;border-left:1px solid var(--line);flex:1 1 0;min-width:0}
.utilgrp a{position:relative;white-space:nowrap;color:var(--accent-dk);text-decoration:none;font:600 14px var(--sans);padding:8px 0}
.utilgrp a:after{content:"";position:absolute;left:0;right:100%;bottom:3px;height:2px;background:var(--clay);border-radius:2px;transition:right .22s ease}
.utilgrp a:hover:after,.utilgrp a:focus-visible:after{right:0}
.utilgrp a:hover{color:var(--clay)}
@media(max-width:560px){.bar{gap:0 14px}.bar>.brand,.utilgrp{flex:none}.utilgrp{gap:14px;padding-left:14px}.wm b{font-size:21px}}
/* type */
h1,h2,h3,h4{font-family:var(--serif);line-height:1.2;letter-spacing:-.2px;color:var(--accent-dk)}
h1{font-size:clamp(32px,5vw,46px);margin:.25em 0 .4em;font-weight:700}
h2{font-size:clamp(25px,3.2vw,33px);margin:1.7em 0 .5em}
h3{font-size:21px;margin:1.3em 0 .4em}
.eyebrow,.tagline{font:700 12px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--clay);margin:0;font-variant:small-caps;font-size:13px}
.tagline b{font-weight:700}.tagline.lead{margin-top:18px}
.eyebrow:before{content:"";display:inline-block;width:22px;height:2px;background:var(--ochre);vertical-align:middle;margin-right:10px;border-radius:2px}
.btn{display:inline-block;background:var(--clay);color:#fff!important;font:700 16px var(--sans);padding:13px 24px;border-radius:999px;text-decoration:none;text-align:center;box-shadow:0 3px 0 var(--clay-dk),0 8px 18px rgba(184,50,42,.22);transition:transform .15s,box-shadow .15s}
.btn:hover{background:var(--clay-dk);transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--accent-dk)!important;border:2px solid var(--accent);box-shadow:none;padding:11px 22px}
.btn.ghost:hover{background:var(--mint);transform:none}
@media(prefers-color-scheme:dark){.btn{color:#1a0d0b!important;background:#e8796d}.btn:hover{background:#f19288}}
.textlink{font-weight:700;margin-left:14px;white-space:nowrap}
/* home hero */
.hero{background:radial-gradient(1200px 400px at 85% -10%,var(--ochre-soft),transparent 60%),var(--bg);padding:34px 0 22px}
.herogrid{display:grid;grid-template-columns:1.05fr .95fr;gap:30px;align-items:center}
.herotext h1{font-size:clamp(34px,5vw,56px);line-height:1.08;margin:.3em 0 .45em;letter-spacing:-.8px}
.lede{font-size:19.5px;color:var(--muted);max-width:620px;margin:0}
.heroctas{display:flex;gap:14px;flex-wrap:wrap;margin:26px 0 0}
.trust{list-style:none;display:flex;flex-wrap:wrap;gap:6px 22px;padding:0;margin:26px 0 0;font:600 13.5px var(--sans);color:var(--accent-dk)}
.trust li:before{content:"\2713";margin-right:7px;color:var(--clay)}
.heroart{justify-self:center;width:100%;max-width:520px}.heroart svg{display:block;width:100%;height:auto}
@media(prefers-color-scheme:dark){.heroart svg{filter:brightness(.82) saturate(.9)}}
@media(max-width:860px){.herogrid{grid-template-columns:1fr}.heroart{max-width:260px;order:-1}.hero{padding-top:18px}}
.pills{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:26px;padding-top:22px;border-top:1px dashed var(--line)}
.pl{font:700 12px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-right:4px}
.pill{background:var(--paper);color:var(--accent-dk);text-decoration:none;font:600 14px var(--sans);padding:8px 16px;border-radius:999px;border:1px solid var(--line);box-shadow:0 1px 2px rgba(45,60,40,.06);transition:.15s}
.pill:hover{color:#fff;background:var(--accent);border-color:var(--accent)}
@media(prefers-color-scheme:dark){.pill:hover{color:#10201a}}
.block{padding-top:52px;padding-bottom:14px}.block h2{margin:.25em 0 .25em}.sub{color:var(--muted);margin:0 0 24px;max-width:620px}
.band{background:linear-gradient(var(--soft),var(--soft));border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 0 40px;margin:40px 0 10px}
/* tiles */
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;margin-top:22px}
.tile{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:22px;text-decoration:none;color:var(--ink);box-shadow:var(--sh);transition:.18s;position:relative;overflow:hidden}
.tile:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--accent)}
.tile:nth-child(3n+2):before{background:var(--sky)}.tile:nth-child(3n+3):before{background:var(--ochre)}
.tile:hover{transform:translateY(-3px);box-shadow:var(--sh2);color:var(--ink)}
.ticon{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:var(--mint);color:var(--accent-dk)}
.tile:nth-child(3n+2) .ticon{background:var(--sky-soft);color:var(--sky)}.tile:nth-child(3n+3) .ticon{background:var(--ochre-soft);color:#8a5d10}
@media(prefers-color-scheme:dark){.tile:nth-child(3n+3) .ticon{color:var(--ochre)}}
.tile h3{margin:16px 0 6px;font-size:21px}.tile p{margin:0 0 14px;color:var(--muted);font-size:15.5px;line-height:1.55;flex:1}
.count{font:700 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--clay)}
/* situations + top picks */
.sits{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.toppicks{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}
.sit,.toppick{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:22px;text-decoration:none;color:var(--ink);transition:.18s;box-shadow:var(--sh)}
.sit:hover,.toppick:hover{transform:translateY(-3px);box-shadow:var(--sh2);color:var(--ink)}
.sit{border-left:5px solid var(--ochre);background:linear-gradient(var(--paper),var(--paper))}
.sit:nth-child(even){border-left-color:var(--sky)}
.tag{align-self:flex-start;background:var(--ochre-soft);color:#6d4a0b;font:700 11.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:4px 11px;border-radius:999px;border:1px solid var(--ochre)}
@media(prefers-color-scheme:dark){.tag{color:var(--ochre)}}
.toppick .tag{background:var(--clay);color:#fff;border-color:var(--clay)}
@media(prefers-color-scheme:dark){.toppick .tag{color:#1a0d0b}}
.sit h3,.toppick h3{margin:14px 0 6px;font-size:20.5px}.sit p,.toppick p{margin:0 0 14px;color:var(--muted);font-size:15.5px;line-height:1.55;flex:1}
.go{font:700 14.5px var(--sans);color:var(--clay)}
.toppick .tpimg{width:100%;height:210px;margin:14px 0 0;background:#fff;border-radius:14px;padding:10px;object-fit:contain;border:1px solid var(--line)}
/* cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:22px;margin:18px 0 10px}
.card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;text-decoration:none;color:var(--ink);transition:.18s;box-shadow:var(--sh);overflow:hidden}
.card:hover{transform:translateY(-3px);box-shadow:var(--sh2);color:var(--ink)}
.card h3{margin:10px 0 8px;font-size:20.5px}.card p{margin:0 0 14px;color:var(--muted);font-size:15.5px;line-height:1.55;flex:1}
.card .meta{font:600 13.5px var(--sans);color:var(--muted)}.card .meta u{color:var(--clay);text-decoration:none;font-weight:700}
.card.has-img{padding:0}
.card .cimg{background:#fff;border:0;border-bottom:1px solid var(--line);border-radius:0;height:190px;padding:14px;display:grid;place-items:center}
.card .cthumb{max-height:162px;width:auto}
.card .cbody{padding:18px 22px 20px;flex:1;min-width:0;display:flex;flex-direction:column}
.method{background:var(--deep);color:var(--on-deep);text-align:center;padding:56px 0;margin-top:50px}
.method h2{color:#fff;margin-top:.2em}.method p{max-width:640px;margin:0 auto 22px}.method .eyebrow{color:#f2c46b}
.method .eyebrow:before{background:#f2c46b}
@media(prefers-color-scheme:dark){.method h2{color:#f4f1e6}}
/* lists */
.list h1{margin-top:12px}.list section{margin-top:30px}
.list h2 a{text-decoration:none;color:var(--accent-dk);border-bottom:3px solid var(--ochre)}
.crumbs{font-size:13.5px;color:var(--muted);margin:22px 0 0}.crumbs a{color:var(--muted)}
/* article */
.article-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0 48px;padding-bottom:20px}
@media(min-width:1024px){.article-grid{grid-template-columns:190px minmax(0,1fr) 250px;gap:0 28px}.tocside,.side{position:sticky;top:96px;align-self:start;margin-top:64px;max-height:calc(100vh - 116px);overflow:auto}}
@media(max-width:1023px){.tocside{order:1}.side{order:2}}
.prose{max-width:800px}.prose.single{margin:0 auto;padding-bottom:40px}
.prose p,.prose li{max-width:70ch}.prose li{margin:6px 0}
.prose h2{padding-top:.4em;border-top:1px solid var(--line);margin-top:2em}
.prose h1{letter-spacing:-.6px}
.dek{font:italic 21px/1.5 var(--serif);color:var(--muted);margin:0 0 14px}
.byline{display:flex;gap:12px;align-items:center;margin:4px 0 16px;font-size:15.5px;line-height:1.4;color:var(--muted)}
.byline small{color:var(--muted);font-size:14px}.byline a{font-weight:700;color:var(--accent-dk);text-decoration:none}
.avatar{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--accent);color:#fff;font:700 17px var(--sans);flex:none}.avatar.sm{width:40px;height:40px;font-size:14px}
.inline-disc{font-size:14.5px;background:var(--ochre-soft);border:1px solid var(--ochre);padding:10px 16px;margin:0 0 26px;color:var(--ink);border-radius:12px}
.toc,.sidebox{border:1px solid var(--line);border-radius:var(--r);padding:16px 20px;background:var(--paper);margin-bottom:18px;box-shadow:var(--sh)}
.toc h2{font:700 12.5px var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:0 0 6px;color:var(--clay);border:0;padding:0}
.toc ol{margin:6px 0 0;padding-left:20px}.toc li{margin:5px 0;font-size:15.5px;line-height:1.4}.toc a{text-decoration:none}.toc a:hover{text-decoration:underline}
.sidebox{background:var(--mint)}.sidebox h3{margin:8px 0 6px;font-size:20px}.sidebox p{font-size:15.5px;line-height:1.5;margin:0 0 12px;color:var(--muted)}.sidebox .btn{display:block}
@media(max-width:1023px){.side{margin-top:0}}
@media(max-width:1039px){.sidebox{display:none}}
.note{background:var(--sky-soft);border:1px solid var(--line);border-left:5px solid var(--sky);border-radius:12px;padding:2px 20px;margin:20px 0}
.med{font-size:14.5px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-top:30px}
.tablewrap{overflow-x:auto;margin:22px 0;border:1px solid var(--line);border-radius:var(--r)}
table{border-collapse:collapse;width:100%;font-size:15.5px}
th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border-bottom:0}
th{background:var(--soft);font:700 12.5px var(--sans);letter-spacing:.06em;text-transform:uppercase}
/* top picks: "at a glance" */
.picks{display:grid;gap:18px;margin:26px 0;padding:26px 18px 18px;border:1px solid var(--line);border-radius:20px;background:var(--paper);box-shadow:var(--sh);position:relative}
.picks:before{content:"At a glance";position:absolute;top:-13px;left:22px;background:var(--accent);color:#fff;font:700 12px var(--sans);letter-spacing:.16em;text-transform:uppercase;padding:5px 14px;border-radius:999px}
@media(prefers-color-scheme:dark){.picks:before{color:#10201a}}
.pick{display:grid;grid-template-columns:1fr;border:1px solid var(--line);border-radius:var(--r);background:var(--bg);position:relative;padding:18px 20px 18px 20px}
.rank{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.rank b{display:grid;place-items:center;min-width:40px;height:40px;padding:0 6px;border-radius:50%;background:var(--accent);color:#fff;font:700 17px var(--serif)}
.rank span{font:700 11.5px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dk);font-variant:small-caps;font-size:12.5px}
.pick:first-child{border-color:var(--clay);box-shadow:0 0 0 1px var(--clay)}
.pick:first-child .rank b{background:var(--clay)}.pick:first-child .rank span{color:var(--clay)}
@media(prefers-color-scheme:dark){.rank b{color:#10201a}.pick:first-child .rank b{color:#1a0d0b}}
.pick-body h3{margin:0 0 4px;font-size:22px}
.bestfor{margin:0 0 8px;font-size:16px}
.checks{list-style:none;padding:0;margin:0 0 12px}.checks li{padding-left:26px;position:relative;font-size:15.5px;margin:4px 0}
.checks li:before{content:"\2713";position:absolute;left:0;color:var(--accent);font-weight:700}
.pick .cta{margin:0;display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.pick.has-img{grid-template-columns:170px 1fr;column-gap:20px;grid-template-areas:"rank rank" "img body"}
.pick.has-img .rank{grid-area:rank}.pick.has-img .pimgwrap{grid-area:img;align-self:start}.pick.has-img .pick-body{grid-area:body}
.pick .pimgwrap{margin:0;aspect-ratio:1;width:170px}.pick .pimg{max-height:150px}
@media(max-width:640px){.pick.has-img{grid-template-columns:1fr;grid-template-areas:"rank" "img" "body"}.pick .pimgwrap{width:100%;max-width:220px;margin:0 auto 14px}}
/* product / fit / faq / author */
.product{border:1px solid var(--line);border-radius:var(--r);padding:22px 24px;margin:28px 0;background:var(--paper);box-shadow:var(--sh)}
.product h3{margin:0 0 8px;font-size:24px}
.badge{display:inline-block;background:var(--clay);color:#fff;font:700 11.5px var(--sans);letter-spacing:.16em;text-transform:uppercase;padding:5px 12px;border-radius:999px;margin-bottom:10px}
@media(prefers-color-scheme:dark){.badge{color:#1a0d0b}}
.specs{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-wrap:wrap;gap:6px 8px}.specs li{background:var(--sky-soft);color:var(--ink);border-radius:999px;padding:3px 12px;font-size:14px;margin:0}
.proscons{display:grid;grid-template-columns:1fr 1fr;gap:6px 26px}.proscons h4,.fit h4{margin:12px 0 4px;font:700 12.5px var(--sans);letter-spacing:.14em;text-transform:uppercase}
.pros h4,.yes h4{color:var(--accent-dk)}.cons h4,.no h4{color:var(--clay)}
.proscons ul{margin:0;padding-left:20px}.proscons li{font-size:16px}
.cta{margin:16px 0 0}
.fit{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}
.fit>div{border-radius:var(--r);padding:6px 20px 12px;border:1px solid var(--line)}.yes{background:var(--mint)}.no{background:#fbeae4}
@media(prefers-color-scheme:dark){.no{background:#2d1f1c}}
.fit ul{margin:0;padding-left:20px}.fit li{font-size:16px}
@media(max-width:700px){.proscons,.fit{grid-template-columns:1fr}}
.faq details{border:1px solid var(--line);border-radius:14px;margin:10px 0;background:var(--paper);box-shadow:0 1px 3px rgba(45,60,40,.05)}
.faq summary{cursor:pointer;font:700 17px var(--sans);padding:15px 20px;list-style:none;display:flex;justify-content:space-between;gap:12px;color:var(--accent-dk)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--ochre-soft);font-size:20px;line-height:1;color:var(--clay);transition:transform .2s}
.faq details[open] summary::after{content:"\2212"}
.faq details[open]{border-color:var(--ochre)}
.faq details p{margin:0;padding:0 20px 18px;color:var(--ink)}
.author{display:flex;gap:18px;border:1px dashed var(--accent);border-radius:var(--r);padding:20px 22px;margin:38px 0 10px;background:var(--paper);box-shadow:var(--sh);position:relative}
.author:before{content:"Field notes by";position:absolute;top:-11px;left:20px;background:var(--bg);padding:0 10px;font:700 11.5px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--clay)}
.author p{margin:4px 0 0;font-size:15.5px;line-height:1.55;color:var(--muted)}
.related{background:var(--soft);border-top:1px solid var(--line);margin-top:34px;padding:10px 0 50px}
/* footer */
footer.site{background:var(--deep);color:var(--on-deep);padding:42px 0 34px;margin-top:0;text-align:center}
footer.site .brand{margin-bottom:6px}
footer.site nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;margin:16px 0}footer.site nav a{font-size:15px;color:#fff}
footer.site a:hover{color:#f2c46b}
.disc{max-width:640px;margin:10px auto;font-size:15px}.small{font-size:13.5px;opacity:.85}
:focus-visible{outline:3px solid var(--clay);outline-offset:2px}
footer.site :focus-visible{outline-color:#f2c46b}
@media(max-width:820px){body{font-size:17px}}
/* product images */
.pimgwrap,.cimg{background:#fff;border:1px solid var(--line);border-radius:14px;display:grid;place-items:center;padding:8px}
.pimg,.cthumb,.sthumb,.tpimg{display:block;max-width:100%;height:auto;object-fit:contain}
.product.has-img{display:grid;grid-template-columns:200px 1fr;gap:6px 24px;align-items:start}
.product.has-img .pimgwrap{margin-top:6px;aspect-ratio:1}.product.has-img .pimg{max-height:180px}
.sideprods{border:1px solid var(--line);border-radius:var(--r);padding:16px 18px 6px;background:var(--paper);margin-bottom:18px;box-shadow:var(--sh)}
.sideprods h2{font:700 12.5px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--clay);margin:0 0 6px;border:0;padding:0}
.sp{display:grid;grid-template-columns:82px 1fr;gap:14px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.sp:first-of-type{border-top:0}
.sp .sthumb{width:82px;height:82px;background:#fff;border-radius:10px;padding:4px}
.sp h3{font:700 15.5px/1.3 var(--sans);margin:0 0 8px;color:var(--ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sp .btn{background:transparent;color:var(--accent-dk)!important;border:2px solid var(--accent);padding:6px 16px;font-size:14.5px;box-shadow:none}
.sp .btn:hover{background:var(--accent);color:#fff!important;transform:none}
@media(max-width:900px){.product.has-img{grid-template-columns:1fr}.product.has-img .pimgwrap{max-width:220px}}
@media(max-width:1039px){.sideprods{margin-top:20px}}
.author small,.byline small{color:var(--muted)}.author strong a{color:var(--accent-dk);text-decoration:none}
.authorhead{display:flex;gap:18px;align-items:center;margin:18px 0 10px}.authorhead h1{margin:0}.authorhead .role{margin:2px 0 0;color:var(--muted);font-weight:600}
.avatar.big{width:84px;height:84px;font-size:28px}
img.avatar{object-fit:cover;border-radius:50%;background:var(--soft)}
.feat{margin:18px 0 22px;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh)}.feat img{display:block;width:auto;max-width:100%;max-height:380px;margin:0 auto;padding:16px;object-fit:contain}
/* comparison tables */
.tablewrap{border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);background:var(--paper);overflow-x:auto}
.tablewrap table{min-width:520px}
.tablewrap th{background:var(--accent);color:#fff;border-bottom:0;padding:14px 16px}
@media(prefers-color-scheme:dark){.tablewrap th{color:#10201a}}
.tablewrap td{padding:13px 16px}
.tablewrap td:first-child{font-weight:700;background:var(--soft);white-space:nowrap}
.tablewrap tbody tr:nth-child(even) td:not(:first-child){background:rgba(150,130,80,.07)}
@media(max-width:640px){.tablewrap td:first-child,.tablewrap th:first-child{position:sticky;left:0;z-index:1}.tablewrap td:first-child{box-shadow:2px 0 0 var(--line)}.tablewrap th:first-child{background:var(--accent)}}
@media(max-width:560px){.prose img,.prose table{max-width:100%}.btn{padding:12px 20px}.author{flex-direction:column;gap:10px}}
