:root{--ink:#1d1c1a;--paper:#fbf8f2;--muted:#6b665d;--accent:#b4441f;--deep:#1f3a34;--rule:#e3dccd;--serif:"Fraunces", Georgia, serif;--sans:"Source Sans 3", system-ui, sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.6 var(--sans)}a{color:inherit;text-decoration-color:var(--accent);text-underline-offset:3px}img{max-width:100%;height:auto;display:block;background:#ddd5c4}.sr{position:absolute;left:-9999px}.topbar{display:flex;justify-content:space-between;padding:.35rem 1.5rem;background:var(--deep);color:#efe6d2;font-size:.8rem;letter-spacing:.03em}.topbar a{color:#fff;text-decoration:none}.masthead{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem .75rem;max-width:1200px;margin:0 auto}.brand{font-family:var(--serif);font-size:2.3rem;font-weight:700;text-decoration:none;letter-spacing:-.02em}.brand em{color:var(--accent);font-style:italic;font-weight:400}.brand.small{font-size:1.4rem;margin:0 0 .5rem}.search input{font:inherit;font-size:.95rem;padding:.45rem .8rem;border:1px solid var(--rule);border-radius:999px;background:#fff;width:220px}.mainnav{display:flex;gap:1.4rem;justify-content:center;border-block:1px solid var(--rule);padding:.6rem 1rem;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em;flex-wrap:wrap}.mainnav a{text-decoration:none;color:var(--muted)}.mainnav a.active{color:var(--ink);box-shadow:inset 0 -2px var(--accent)}main{max-width:1200px;margin:0 auto;padding:1.5rem;min-height:60vh}.kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:600;color:var(--accent);margin:0 0 .4rem}.section-title{font-family:var(--serif);font-size:1.6rem;border-top:3px solid var(--ink);padding-top:.5rem;margin:2.5rem 0 1rem}.section-title a{text-decoration:none}.lead-grid{display:grid;grid-template-columns:2fr 1fr;gap:2rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.75rem}.grid.two{grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.card h3{font-family:var(--serif);font-size:1.3rem;line-height:1.2;margin:.2rem 0 .4rem}.card h3 a{text-decoration:none}.card.big h3{font-size:2.4rem}.card img{aspect-ratio:16/9;object-fit:cover;margin-bottom:.8rem;border-radius:2px}.card .excerpt,.card .excerpt p{color:#3d3a35;margin:0 0 .4rem;font-size:1rem}.byline{color:var(--muted);font-size:.88rem}.band.alt{background:#f2ecdf;margin:2rem -1.5rem 0;padding:0 1.5rem 2rem}.band.alt .section-title{margin-top:0;padding-top:1.5rem;border-top:none}.trending{border-left:1px solid var(--rule);padding-left:1.5rem}.trending ol{list-style:none;padding:0;margin:0}.trending li{display:flex;gap:.8rem;padding:.7rem 0;border-bottom:1px solid var(--rule)}.trending .rank{font-family:var(--serif);font-size:1.8rem;color:var(--accent);line-height:1;min-width:1.4rem}.trending a{font-weight:600;text-decoration:none;line-height:1.3;display:block}.trending small{color:var(--muted)}.live-promo{background:var(--deep);color:#f2ead7;padding:1.5rem;border-radius:3px}.live-promo .kicker{color:#ffb38f}.live-promo h3{font-family:var(--serif);font-size:1.5rem}.story{max-width:760px;margin:0 auto}.story-head h1,.page h1{font-family:var(--serif);font-size:clamp(2rem,5vw,3.3rem);line-height:1.08;margin:.2rem 0 .8rem;letter-spacing:-.015em}.dek,.dek p{font-size:1.25rem;color:#47433c;margin:0 0 .6rem}.hero{margin:1.5rem -4rem}.hero figcaption,.inline-fig figcaption{color:var(--muted);font-size:.85rem;padding:.4rem 0}.prose{font-size:1.12rem}.prose h2{font-family:var(--serif);font-size:1.7rem;margin:2.2rem 0 .6rem;line-height:1.2}.prose h3{font-family:var(--serif);font-size:1.3rem;margin:1.8rem 0 .4rem}.prose li{margin:.35rem 0}.pull,.prose blockquote{font-family:var(--serif);font-size:1.45rem;line-height:1.35;border-left:4px solid var(--accent);margin:2rem 0;padding:.2rem 0 .2rem 1.4rem;font-style:italic}.pull p{margin:0}.inline-fig{margin:2rem 0}.author-box{border-top:1px solid var(--rule);margin-top:2.5rem;padding-top:1rem;color:#47433c}.muted{color:var(--muted)}.small{font-size:.85rem}.err{color:#a3261a}.ok{color:#1f6b45;font-weight:600}.newsletter{background:var(--deep);color:#f3ead6;padding:2rem;margin:3rem 0 0;border-radius:3px}.newsletter h2{font-family:var(--serif);margin:0 0 .4rem;font-size:1.8rem}.newsletter form{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.newsletter input[type=email]{font:inherit;padding:.6rem .8rem;border:0;border-radius:3px;min-width:280px}.newsletter button,.product button,.search-page button{font:inherit;font-weight:600;padding:.6rem 1.2rem;border:0;border-radius:3px;background:var(--accent);color:#fff;cursor:pointer}.newsletter fieldset{border:0;padding:0;width:100%;display:flex;gap:1rem;font-size:.95rem}.newsletter legend{float:left;margin-right:.5rem}.newsletter.compact{padding:1.4rem}.footer{background:#171614;color:#cfc7b6;display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;padding:2.5rem max(1.5rem,calc(50vw - 600px));margin-top:4rem;font-size:.95rem}.footer h3{color:#fff;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}.footer ul{list-style:none;padding:0}.footer .legal{grid-column:1/-1;border-top:1px solid #333;padding-top:1rem;font-size:.8rem}.skel{height:140px;background:linear-gradient(90deg,#eee6d6,#f6f1e7,#eee6d6);background-size:200% 100%;animation:sh 1.2s infinite;margin-bottom:1rem;border-radius:3px}@keyframes sh{to{background-position:-200% 0}}.live .dot{display:inline-block;width:.6rem;height:.6rem;border-radius:50%;background:#999;margin-right:.3rem}.live .dot.on{background:#d22;animation:pl 1s infinite alternate}@keyframes pl{to{opacity:.3}}.update{border-left:2px solid var(--rule);padding-left:1rem;margin-bottom:1.5rem}.stamp{font-size:.8rem;color:var(--accent);font-weight:600;text-transform:uppercase}.results{list-style:none;padding:0}.results li{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--rule)}.results h3{margin:0;font-family:var(--serif)}.search-page input{font:inherit;padding:.55rem .8rem;width:min(480px,70vw);border:1px solid var(--rule)}.product{background:#fff;padding:1rem;border:1px solid var(--rule)}.product h3{font-family:var(--serif);margin:.6rem 0 .2rem}.price{font-weight:700;font-size:1.2rem;margin:0}.desc{font-size:.95rem;color:#47433c}@media (max-width:820px){.lead-grid,.footer{grid-template-columns:1fr}.hero{margin:1.5rem 0}.trending{border:0;padding:0}.masthead{flex-direction:column}.card.big h3{font-size:1.8rem}.grid.two{grid-template-columns:1fr}}
