:root{--bg:#faf7f2;--paper:#fff;--ink:#1f1b18;--ink-2:#4a423c;--muted:#7a6f66;--line:#e8e0d6;--line-2:#f1ebe3;--coal:#1c1917;--coal-2:#292421;--ember:#e4572e;--ember-dark:#c2410c;--amber:#f2a541;--amber-soft:#fff4e0;--green:#2f7d4f;--green-soft:#eaf6ee;--red-soft:#fdecea;--blue-soft:#eaf2fb;--radius:14px;--radius-sm:10px;--shadow:0 1px 2px #1c19170d, 0 6px 24px #1c19170f;--shadow-lg:0 18px 50px #1c191724;--head:"Oswald", "Arial Narrow", system-ui, sans-serif;--body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--max:1220px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}body{background:var(--bg);color:var(--ink);font:17px/1.65 var(--body);-webkit-font-smoothing:antialiased;margin:0}img{max-width:100%;height:auto;display:block}a{color:var(--ember-dark);text-underline-offset:3px}a:hover{color:var(--ember)}h1,h2,h3,h4{font-family:var(--head);letter-spacing:.005em;color:var(--ink);margin:0 0 .5em;font-weight:600;line-height:1.15}h1{text-transform:uppercase;font-size:clamp(2.1rem,4.6vw,3.4rem)}h2{font-size:clamp(1.55rem,2.6vw,2.05rem)}h3{font-size:1.28rem}p{margin:0 0 1em}.wrap{width:min(var(--max), 100% - 40px);margin-inline:auto}.narrow{width:min(780px,100% - 40px);margin-inline:auto}.muted{color:var(--muted)}.small{font-size:.875rem}.skip{position:absolute;left:-999px}.skip:focus{z-index:100;background:#fff;padding:8px 12px;top:12px;left:12px}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.btn{background:var(--ember);color:#fff;font:600 .95rem/1 var(--body);cursor:pointer;white-space:nowrap;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex}.btn:hover{background:var(--ember-dark);color:#fff}.btn:active{transform:translateY(1px)}.btn-ghost{color:#fff;background:0 0;box-shadow:inset 0 0 0 2px #ffffff8c}.btn-ghost:hover{background:#ffffff1f}.btn-dark{background:var(--coal)}.btn-dark:hover{background:#000}.btn-outline{color:var(--ink);box-shadow:inset 0 0 0 2px var(--line);background:0 0}.btn-outline:hover{color:var(--ember-dark);box-shadow:inset 0 0 0 2px var(--ember);background:0 0}.btn-small{padding:9px 16px;font-size:.875rem}.topbar{background:var(--coal);color:#d6cec6;font-size:.8rem}.topbar .wrap{justify-content:space-between;gap:16px;padding:7px 0;display:flex}.topbar a{color:#fff;text-decoration:none}.topbar a:hover{color:var(--amber)}.topbar-links{gap:18px;display:flex}.site-header{z-index:50;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#fffffff7;position:sticky;top:0}.header-inner{align-items:center;gap:28px;height:70px;display:flex}.logo{color:var(--ink);font:700 1.6rem/1 var(--head);text-transform:uppercase;letter-spacing:.01em;align-items:center;gap:9px;text-decoration:none;display:inline-flex}.logo:hover{color:var(--ink)}.logo .tld{color:var(--ember)}.nav{flex:1;align-items:stretch;height:100%;display:flex;position:relative}.nav>ul{gap:2px;margin:0;padding:0;list-style:none;display:flex}.nav>ul>li{display:flex}.nav-link{font:500 .83rem/1 var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border-bottom:3px solid #0000;align-items:center;gap:6px;padding:0 13px;text-decoration:none;display:flex}.nav-link:hover,.nav>ul>li:hover>.nav-link,.nav-link[aria-current=page]{color:var(--ember-dark);border-bottom-color:var(--ember)}.nav-link svg{opacity:.6;width:10px;height:10px}.mega{border:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);width:min(960px,100vw - 260px);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;background:#fff;grid-template-columns:1fr 220px;gap:28px;padding:24px 28px;transition:all .15s;display:grid;position:absolute;top:100%;left:0;transform:translateY(6px)}.nav>ul>li:hover .mega,.nav>ul>li:focus-within .mega{opacity:1;visibility:visible;transform:none}.mega-links{columns:2;column-gap:32px;margin:0;padding:0;list-style:none}.mega-links li{break-inside:avoid}.mega-links a{color:var(--ink-2);padding:6px 0;font-size:.88rem;line-height:1.35;text-decoration:none;display:block}.mega-links a:hover{color:var(--ember-dark)}.mega-feature{color:var(--ink);text-decoration:none;display:block}.mega-feature img{border-radius:var(--radius-sm);aspect-ratio:4/3;object-fit:cover;margin-bottom:8px}.mega-feature span{font:600 .95rem/1.25 var(--head)}.mega-all{border-top:1px solid var(--line-2);flex-wrap:wrap;grid-column:1/-1;gap:24px;margin:0;padding-top:12px;font-size:.88rem;font-weight:600;display:flex}.mega-tools{grid-template-columns:repeat(3,1fr);width:min(920px,100vw - 260px)}.mega-title{font:600 .75rem/1 var(--head);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}.mega-links-1{columns:1}.header-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.icon-btn{width:40px;height:40px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.icon-btn:hover{background:var(--line-2);color:var(--ember-dark)}.icon-btn svg{width:20px;height:20px}.menu-toggle,.mobile-nav{display:none}.site-footer{background:var(--coal);color:#cfc6bd;margin-top:80px}.footer-top{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding:56px 0 40px;display:grid}.site-footer h4{color:#fff;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px;font-size:.85rem}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:0 0 8px}.site-footer a{color:#cfc6bd;font-size:.92rem;text-decoration:none}.site-footer a:hover{color:var(--amber)}.site-footer .logo{color:#fff;margin-bottom:14px}.footer-blurb{max-width:34ch;font-size:.92rem}.footer-bottom{color:#a39a91;border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:18px 0 28px;font-size:.8rem;display:flex}.section{padding:64px 0}.section-tight{padding:40px 0}.section-head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px;display:flex}.section-head h2{margin:0}.section-head a{white-space:nowrap;font-size:.92rem;font-weight:600;text-decoration:none}.eyebrow{font:500 .78rem/1 var(--head);letter-spacing:.14em;text-transform:uppercase;color:var(--ember);margin-bottom:12px;display:inline-block}.kicker-line{align-items:center;gap:14px;display:flex}.kicker-line:after{content:"";background:var(--line);flex:1;height:2px}.band-dark{background:var(--coal);color:#e9e2da}.band-dark h2,.band-dark h3{color:#fff}.band-cream{background:#f3ece2}.hero{color:#fff;background:var(--coal);position:relative;overflow:hidden}.hero-media{position:absolute;inset:0}.hero-media img{object-fit:cover;width:100%;height:100%}.hero-media:after{content:"";background:linear-gradient(90deg,#14100eeb 0%,#14100eb3 45%,#14100e40 100%);position:absolute;inset:0}.hero-inner{max-width:640px;padding:110px 0 120px;position:relative}.hero h1{color:#fff;margin-bottom:18px;font-size:clamp(2.5rem,6vw,4.4rem);line-height:1.02}.hero h1 em{color:var(--amber);font-style:normal}.hero p.lead{color:#efe7df;max-width:52ch;font-size:1.15rem}.hero-search{max-width:520px;box-shadow:var(--shadow-lg);background:#fff;border-radius:999px;margin:26px 0 18px;padding:6px;display:flex}.hero-search input{font:1rem var(--body);color:var(--ink);background:0 0;border:0;flex:1;min-width:0;padding:0 18px}.hero-search input:focus{outline:none}.hero-pills{flex-wrap:wrap;gap:8px;font-size:.85rem;display:flex}.hero-pills a{color:#fff;background:#ffffff1f;border:1px solid #ffffff40;border-radius:999px;padding:6px 12px;text-decoration:none}.hero-pills a:hover{background:var(--ember);border-color:var(--ember)}.hero-credit{color:#fff9;z-index:2;font-size:.7rem;position:absolute;bottom:10px;right:14px}.hero-credit a{color:inherit}.trust{border-bottom:1px solid var(--line);background:#fff}.trust ul{grid-template-columns:repeat(4,1fr);gap:20px;margin:0 auto;padding:18px 0;list-style:none;display:grid}.trust li{color:var(--ink-2);justify-content:center;align-items:center;gap:12px;font-size:.9rem;line-height:1.35;display:flex}.trust b{color:var(--ink);font-family:var(--head);letter-spacing:.02em;font-size:1rem;font-weight:600;display:block}.trust-ico{background:var(--amber-soft);border-radius:50%;flex:none;place-items:center;width:42px;height:42px;font-size:1.2rem;display:grid}.tiles{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.tile{border-radius:var(--radius);aspect-ratio:3/4;color:#fff;background:var(--coal);box-shadow:var(--shadow);align-items:flex-end;text-decoration:none;display:flex;position:relative;overflow:hidden}.tile img{object-fit:cover;width:100%;height:100%;transition:transform .5s;position:absolute;inset:0}.tile:after{content:"";background:linear-gradient(#0000 35%,#0f0c0ae0 100%);position:absolute;inset:0}.tile:hover img{transform:scale(1.05)}.tile-body{z-index:1;padding:20px;position:relative}.tile h3{color:#fff;text-transform:uppercase;margin-bottom:4px;font-size:1.6rem}.tile p{color:#eee5dc;margin:0;font-size:.9rem}.tile .count{color:var(--amber);letter-spacing:.04em;text-transform:uppercase;margin-top:10px;font-size:.78rem;font-weight:600;display:inline-block}.grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);box-shadow:var(--shadow);flex-direction:column;text-decoration:none;transition:transform .18s,box-shadow .18s;display:flex;overflow:hidden}.card:hover{box-shadow:var(--shadow-lg);color:var(--ink);transform:translateY(-3px)}.card-media{aspect-ratio:16/10;background:#e9e1d7;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%}.card-body{flex-direction:column;flex:1;padding:18px 20px 20px;display:flex}.card-tag{font:500 .72rem/1 var(--head);letter-spacing:.12em;text-transform:uppercase;color:var(--ember);margin-bottom:9px}.card h3{margin-bottom:8px;font-size:1.22rem}.card p{color:var(--ink-2);margin-bottom:14px;font-size:.93rem}.card-meta{color:var(--muted);align-items:center;gap:8px;margin-top:auto;font-size:.8rem;display:flex}.card-meta img{border-radius:50%;width:24px;height:24px}.card-lg{grid-template-columns:1.2fr 1fr;display:grid}.card-lg .card-media{aspect-ratio:auto;min-height:300px}.card-lg .card-body{justify-content:center;padding:30px}.card-lg h3{font-size:1.75rem}.banner{background:var(--coal);color:#fff;position:relative;overflow:hidden}.banner-media{position:absolute;inset:0}.banner-media img{object-fit:cover;opacity:.45;width:100%;height:100%}.banner-media:after{content:"";background:linear-gradient(90deg,#14100ee6,#14100e59);position:absolute;inset:0}.banner-inner{max-width:760px;padding:70px 0 64px;position:relative}.banner h1{color:#fff;margin-bottom:14px}.banner p{color:#ece4db;max-width:60ch;font-size:1.1rem}.banner-plain .banner-inner{padding:54px 0 48px}.crumbs{color:#bfb5ab;margin-bottom:14px;font-size:.82rem}.crumbs a{color:#e9e1d8;text-decoration:none}.crumbs a:hover{color:var(--amber)}.crumbs span{opacity:.6;margin:0 6px}.chips{flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none;display:flex}.chips li,.chips a{color:#fff;background:#ffffff1f;border:1px solid #ffffff38;border-radius:999px;padding:6px 13px;font-size:.82rem;text-decoration:none}.chips a:hover{background:var(--ember);border-color:var(--ember)}.article-hero{background:var(--coal);color:#fff}.article-hero-inner{max-width:860px;padding:44px 0 40px}.article-hero h1{color:#fff;margin-bottom:14px;font-size:clamp(2rem,4.2vw,3.1rem)}.article-hero .dek{color:#e6ddd3;max-width:62ch;font-size:1.15rem}.byline{color:#cfc5bb;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:22px;font-size:.88rem;display:flex}.byline-author{color:#fff;align-items:center;gap:10px;text-decoration:none;display:flex}.byline-author img{border:2px solid var(--amber);border-radius:50%;width:44px;height:44px}.byline-author b{font-weight:600;display:block}.byline-author small{color:#bfb5ab;font-size:.78rem;display:block}.byline-sep{background:#ffffff2e;width:1px;height:28px}.badge-check{color:#b8e8c9;background:#2f7d4f40;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:.8rem;font-weight:600;display:inline-flex}.article-hero-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:40px;padding:36px 0;display:grid}.article-hero-grid .article-hero-inner{padding:0}.article-hero-grid h1{font-size:clamp(1.9rem,3.4vw,2.7rem)}.article-figure{margin:0}.article-figure img{aspect-ratio:16/11;object-fit:cover;border-radius:var(--radius);width:100%;max-height:330px;box-shadow:0 10px 30px #00000059}.article-figure figcaption{color:#a8a29e;text-align:right;padding:6px 2px 0;font-size:.72rem}.article-figure figcaption a{color:inherit}.article-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:56px;margin-top:40px;display:grid}.article-main{min-width:0;max-width:760px}.sidebar{gap:20px;display:grid;position:sticky;top:92px}.side-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.side-box h4{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;font-size:.82rem}.toc ol{counter-reset:toc;margin:0;padding:0;list-style:none}.toc li{counter-increment:toc}.toc a{border-top:1px solid var(--line-2);color:var(--ink-2);gap:10px;padding:7px 0;font-size:.9rem;line-height:1.35;text-decoration:none;display:flex}.toc li:first-child a{border-top:0}.toc a:before{content:counter(toc, decimal-leading-zero);font:600 .75rem/1.6 var(--head);color:var(--ember)}.toc a:hover,.toc a.active{color:var(--ember-dark)}.side-cta{background:var(--coal);color:#e9e2da;border:0}.side-cta h4{color:var(--amber)}.side-cta p{font-size:.92rem}.side-cta strong{color:#fff;font:600 1.25rem/1.2 var(--head);margin-bottom:8px;display:block}.disclosure{color:var(--muted);border-left:3px solid var(--line);margin:0 0 26px;padding:2px 0 2px 12px;font-size:.8rem}.takeaways{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--ember);border-radius:var(--radius);box-shadow:var(--shadow);margin:0 0 34px;padding:22px 26px}.takeaways h2{text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px;font-size:1.1rem}.takeaways ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.takeaways li{padding-left:30px;font-size:.97rem;line-height:1.5;position:relative}.takeaways li:before{content:"✓";background:var(--ember);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.72rem;font-weight:700;display:grid;position:absolute;top:1px;left:0}.emergency{background:var(--red-soft);border-radius:var(--radius-sm);border:1px solid #f5c2bc;margin:0 0 28px;padding:14px 18px;font-size:.93rem}.emergency strong{color:#9b1c12}.prose{color:#2b2522;font-size:1.06rem}.prose>*+h2{margin-top:2.1em}.prose h2{padding-top:.2em}.prose h2:before{content:"";background:var(--ember);border-radius:2px;width:44px;height:4px;margin-bottom:14px;display:block}.prose h3{margin-top:1.7em}.prose ul,.prose ol{margin:0 0 1.2em;padding-left:1.3em}.prose li{margin:.35em 0}.prose li::marker{color:var(--ember)}.prose ol{counter-reset:step;padding-left:0;list-style:none}.prose ol>li{counter-increment:step;margin:.8em 0;padding-left:46px;position:relative}.prose ol>li:before{content:counter(step);background:var(--coal);color:#fff;width:30px;height:30px;font:600 .9rem/30px var(--head);text-align:center;border-radius:50%;position:absolute;top:0;left:0}.prose strong{color:var(--ink)}.prose blockquote{border-left:4px solid var(--amber);color:var(--ink-2);margin:1.6em 0;padding:4px 0 4px 20px;font-style:italic}.prose hr{border:0;border-top:1px solid var(--line);margin:2.4em 0}.table-wrap{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);box-shadow:var(--shadow);margin:1.4em 0 1.8em;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;min-width:560px;font-size:.92rem}.prose th{background:var(--coal);color:#fff;text-align:left;font:500 .82rem/1.3 var(--head);letter-spacing:.06em;text-transform:uppercase;padding:12px 14px}.prose td{border-top:1px solid var(--line-2);vertical-align:top;padding:11px 14px}.prose tbody tr:nth-child(2n) td{background:#fcfaf7}.figure{margin:2em 0}.figure img{border-radius:var(--radius);width:100%;box-shadow:var(--shadow)}.figure figcaption{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:8px 2px 0;font-size:.85rem;line-height:1.4;display:flex}.figure figcaption span{color:var(--ink-2)}.figure figcaption small{font-size:.72rem}.figure figcaption a{color:inherit}.callout{border-radius:var(--radius);border:1px solid;margin:1.8em 0;padding:18px 22px 6px;font-size:.98rem;position:relative}.callout-title{font:600 .92rem/1.2 var(--head);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}.callout-didyouknow{background:var(--blue-soft);border-color:#cfe0f3}.callout-didyouknow .callout-title{color:#1f5f9e}.callout-protip{background:var(--green-soft);border-color:#cbe7d5}.callout-protip .callout-title{color:var(--green)}.callout-watchout{background:var(--amber-soft);border-color:#f7d9a6}.callout-watchout .callout-title{color:#a15c00}.callout-verdict{background:var(--coal);border-color:var(--coal);color:#ece4db;padding:22px 26px 10px}.callout-verdict strong{color:#fff}.callout-verdict a{color:var(--amber)}.callout-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.callout-head img{border:2px solid var(--amber);border-radius:50%;width:46px;height:46px}.callout-verdict .callout-title{color:var(--amber);margin:0 0 2px;font-size:1.05rem}.callout-by{color:#bfb5ab;margin:0;font-size:.8rem}.faq-item{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);margin:10px 0;padding:0 18px}.faq-item summary{cursor:pointer;font:600 1.05rem/1.35 var(--body);color:var(--ink);padding:15px 30px 15px 0;list-style:none;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font:400 1.6rem/1 var(--body);color:var(--ember);position:absolute;top:11px;right:0}.faq-item[open] summary:after{content:"–"}.faq-item[open]{box-shadow:var(--shadow)}.faq-item>:not(summary){margin-top:0}.product-list{gap:18px;margin:1.5em 0 .6em;display:grid}.product-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:190px minmax(0,1fr) 200px;align-items:start;gap:22px;padding:20px;font-size:.94rem;display:grid}.product-media{border-radius:var(--radius-sm);aspect-ratio:1;background:#f6f3ef;place-items:center;padding:12px;display:grid;position:relative}.product-media img{object-fit:contain;mix-blend-mode:multiply;max-height:160px}.product-badge{background:var(--ember);color:#fff;font:600 .72rem/1 var(--head);letter-spacing:.06em;text-transform:uppercase;border-radius:6px;max-width:100%;padding:7px 10px;position:absolute;top:-10px;left:-6px;box-shadow:0 4px 10px #e4572e59}.product-brand{font:500 .75rem/1 var(--head);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 3px}.prose .product-name{margin:0 0 8px;font-size:1.2rem}.product-name a{color:var(--ink);text-decoration:none}.product-name a:hover{color:var(--ember-dark)}.product-blurb{color:var(--ink-2);margin-bottom:10px}.prose .product-specs{flex-wrap:wrap;gap:6px;margin:0 0 10px;padding:0;list-style:none;display:flex}.prose .product-specs li{background:var(--line-2);border-radius:6px;margin:0;padding:4px 8px;font-size:.78rem}.product-pc{grid-template-columns:1fr 1fr;gap:10px;display:grid}.prose .product-pc ul{margin:0;padding:0;list-style:none}.prose .product-pc li{margin:0 0 4px;padding-left:20px;font-size:.86rem;line-height:1.4;position:relative}.product-pc .pros li:before{content:"+";color:var(--green);font-weight:700;position:absolute;left:0}.product-pc .cons li:before{content:"–";color:#b42318;font-weight:700;position:absolute;left:0}.product-buy{text-align:center;border-left:1px solid var(--line-2);flex-direction:column;justify-content:center;align-self:stretch;padding-left:20px;display:flex}.product-price{font:700 1.7rem/1 var(--head);color:var(--ink);margin:0 0 4px}.product-price s{color:var(--muted);font-size:.95rem;font-weight:400}.product-save{color:var(--green);background:var(--green-soft);border-radius:999px;margin:0 auto 10px;padding:3px 9px;font-size:.75rem;font-weight:600;display:inline-block}.btn-buy{white-space:normal;text-align:center;width:100%;margin:8px 0;line-height:1.2}.product-checked{color:var(--muted);margin:0;font-size:.72rem;line-height:1.35}.product-note{color:var(--muted);margin-bottom:1.6em;font-size:.78rem}.product-tile{color:var(--ink);border-top:1px solid var(--line-2);align-items:center;gap:12px;padding:9px 0;text-decoration:none;display:flex}.product-tile:first-of-type{border-top:0}.product-tile-img{background:#f6f3ef;border-radius:8px;flex:none;place-items:center;width:58px;height:58px;padding:4px;display:grid}.product-tile-img img{object-fit:contain;mix-blend-mode:multiply;max-height:50px}.product-tile-name{font-size:.84rem;font-weight:500;line-height:1.3;display:block}.product-tile-price{font:600 .95rem/1.4 var(--head);color:var(--ember-dark);display:block}.product-tile-price small{font:400 .75rem var(--body);color:var(--muted)}.product-tile:hover .product-tile-name{color:var(--ember-dark)}.shop-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.shop-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);box-shadow:var(--shadow);flex-direction:column;padding:16px;text-decoration:none;transition:transform .18s,box-shadow .18s;display:flex}.shop-card:hover{box-shadow:var(--shadow-lg);color:var(--ink);transform:translateY(-3px)}.shop-card-img{border-radius:var(--radius-sm);aspect-ratio:1;background:#f6f3ef;place-items:center;margin-bottom:12px;padding:14px;display:grid}.shop-card-img img{object-fit:contain;mix-blend-mode:multiply;max-height:100%}.shop-card small{font:500 .7rem/1 var(--head);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.shop-card b{margin:6px 0 10px;font-size:.92rem;font-weight:600;line-height:1.35;display:block}.shop-card .price{font:700 1.25rem/1 var(--head);color:var(--ink);margin-top:auto}.shop-card .store{color:var(--muted);margin-top:4px;font-size:.75rem}.author-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:96px 1fr;gap:20px;margin:40px 0;padding:24px;display:grid}.author-box img{border-radius:50%;width:96px;height:96px}.author-box h3{margin:0 0 2px}.author-box .role{color:var(--ember-dark);margin-bottom:8px;font-size:.85rem;font-weight:600}.author-box p{color:var(--ink-2);margin-bottom:8px;font-size:.93rem}.authors{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.author-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);text-align:center;color:var(--ink);box-shadow:var(--shadow);padding:26px;text-decoration:none}.author-card:hover{color:var(--ink);box-shadow:var(--shadow-lg)}.author-card img{border:3px solid var(--amber);border-radius:50%;width:104px;height:104px;margin:0 auto 14px}.author-card h3{margin-bottom:2px}.author-card .role{color:var(--ember-dark);margin-bottom:10px;font-size:.85rem;font-weight:600}.author-card p{color:var(--ink-2);margin:0;font-size:.9rem}.share{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:34px 0 0;padding-top:22px;font-size:.85rem;display:flex}.share a,.share button{border:1px solid var(--line);background:var(--paper);color:var(--ink);font:500 .82rem var(--body);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:7px 13px;text-decoration:none;display:inline-flex}.share a:hover,.share button:hover{border-color:var(--ember);color:var(--ember-dark)}.cta-band{background:linear-gradient(120deg, var(--ember-dark), var(--ember) 55%, var(--amber));color:#fff;border-radius:var(--radius);box-shadow:var(--shadow-lg);grid-template-columns:1fr auto;align-items:center;gap:24px;padding:38px 40px;display:grid}.cta-band h2,.cta-band h3{color:#fff;margin-bottom:6px}.cta-band p{color:#fff4ec;margin:0}.cta-band .btn{background:var(--coal)}.cta-band .btn:hover{background:#000}.cta-box{background:var(--coal);color:#e9e2da;border-radius:var(--radius);margin:34px 0;padding:26px 28px}.cta-box h3{color:#fff}.cta-box p{color:#d9d0c7}.tool{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin:0 0 34px;padding:28px}.tool-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;display:grid}.tool label{margin-bottom:6px;font-size:.88rem;font-weight:600;display:block}.tool input,.tool select{width:100%}.tool-result{border-radius:var(--radius-sm);background:#fbf7f1;border:1px dashed #e3cfb5;margin-top:24px;padding:20px 22px}.tool-result h3{margin-bottom:10px}.result-big{font:700 2.2rem/1 var(--head);color:var(--ember-dark);margin:0 0 6px}.result-table{border-collapse:collapse;width:100%;margin-top:10px;font-size:.95rem}.result-table td{border-top:1px solid var(--line);padding:8px 0}.result-table td:last-child{text-align:right;font-weight:600}.tool-cards .card-body{gap:4px}.tool-ico{margin-bottom:6px;font-size:1.8rem}input,select,textarea{font:inherit;border-radius:var(--radius-sm);color:var(--ink);background:#fff;border:1px solid #d9cfc4;padding:11px 13px}input:focus,select:focus,textarea:focus{outline:2px solid var(--amber);outline-offset:1px;border-color:var(--amber)}.stack{gap:16px;display:grid}.field{gap:6px;display:grid}.field label{font-size:.9rem;font-weight:600}.two{grid-template-columns:1fr 1fr;gap:16px;display:grid}.check{align-items:flex-start;gap:10px;font-size:.9rem;display:flex}.check input{margin-top:4px}.hp{position:absolute;left:-9999px}.form-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px}.search-box{gap:10px;margin-bottom:26px;display:flex}.search-box input{border-radius:999px;flex:1;padding:14px 18px;font-size:1.05rem}.search-results{gap:14px;display:grid}.search-hit{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);grid-template-columns:120px 1fr;gap:16px;padding:12px;text-decoration:none;display:grid}.search-hit:hover{border-color:var(--ember);color:var(--ink)}.search-hit img{object-fit:cover;border-radius:8px;width:120px;height:80px}.search-hit h3{margin-bottom:4px;font-size:1.1rem}.search-hit p{color:var(--ink-2);margin:0;font-size:.88rem}.page-body{padding:48px 0 0}.prose-page{font-size:1.04rem}.prose-page h2{margin-top:1.6em}@media (width<=1100px){.nav{display:none}.menu-toggle{display:grid}.header-actions .btn{display:none}.mobile-nav{z-index:60;background:#fff;padding:10px 20px 40px;transition:transform .2s;display:block;position:fixed;inset:70px 0 0;overflow-y:auto;transform:translate(100%)}.mobile-nav.open{transform:none}.mobile-nav details{border-bottom:1px solid var(--line)}.mobile-nav summary,.mobile-nav>a{font:600 1.05rem var(--head);text-transform:uppercase;letter-spacing:.04em;color:var(--ink);cursor:pointer;padding:15px 0;text-decoration:none;display:block}.mobile-nav>a{border-bottom:1px solid var(--line)}.mobile-nav ul{margin:0 0 12px;padding:0;list-style:none}.mobile-nav li a{color:var(--ink-2);padding:7px 0;text-decoration:none;display:block}.mobile-nav .btn{width:100%;margin-top:20px}.article-layout{grid-template-columns:1fr;gap:0}.sidebar{grid-template-columns:1fr 1fr;margin-top:30px;position:static}.sidebar .toc{display:none}.tiles{grid-template-columns:repeat(2,1fr)}.tile{aspect-ratio:4/3}.shop-grid{grid-template-columns:repeat(3,1fr)}.footer-top{grid-template-columns:1fr 1fr}.trust ul,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=820px){.grid,.grid-2,.authors{grid-template-columns:1fr 1fr}.card-lg{grid-template-columns:1fr}.card-lg .card-media{min-height:220px}.product-card{grid-template-columns:130px minmax(0,1fr)}.product-buy{border-left:0;border-top:1px solid var(--line-2);text-align:left;grid-column:1/-1;grid-template-columns:auto 1fr;align-items:center;gap:4px 14px;padding:14px 0 0;display:grid}.product-buy .btn-buy,.product-checked{grid-column:1/-1}.product-save{justify-self:start;margin:0}.cta-band{grid-template-columns:1fr;padding:30px 26px}.shop-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){body{font-size:16px}.topbar-msg{display:none}.grid,.grid-2,.grid-4,.authors,.tiles,.sidebar,.footer-top,.two{grid-template-columns:1fr}.tile{aspect-ratio:16/10}.trust ul{grid-template-columns:1fr 1fr;gap:14px}.trust li{font-size:.8rem}.hero-inner{padding:70px 0 80px}.product-card{grid-template-columns:1fr;padding:16px}.product-media{aspect-ratio:16/10}.product-pc{grid-template-columns:1fr}.author-box{text-align:center;grid-template-columns:1fr}.author-box img{margin:0 auto}.byline-sep{display:none}.search-hit{grid-template-columns:1fr}.search-hit img{width:100%;height:140px}.section{padding:46px 0}.section-head{flex-direction:column;align-items:start;gap:6px}}.stars-row{color:var(--ink-2);align-items:center;gap:4px;font-size:.85rem;display:inline-flex}.stars-row small{color:var(--muted);font-size:.78rem}.stars{--pct:0%;letter-spacing:1px;font-size:.95rem;line-height:1;display:inline-block;position:relative}.stars:before{content:"★★★★★";color:#e7dfd6}.stars:after{content:"★★★★★";width:var(--pct);color:var(--amber);white-space:nowrap;position:absolute;inset:0;overflow:hidden}.product-rating{margin:-4px 0 8px}.product-tile .stars-row{margin-top:2px;font-size:.75rem}.shop-card .stars-row{margin-top:6px}.timer-clock{font-variant-numeric:tabular-nums;margin:10px 0 4px;font-size:3.4rem}.timer-step{min-height:1.5em;font-weight:600}.timer-btns{flex-wrap:wrap;gap:10px;display:flex}.choices{border:0;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:0;padding:0;display:grid}.choices legend{margin-bottom:10px;padding:0;font-size:1rem;font-weight:600}.choice{border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;background:#fff;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.92rem;line-height:1.35;transition:border-color .15s,background .15s;display:flex}.choice:hover{border-color:var(--ember)}.choice input{width:auto;accent-color:var(--ember);margin-top:3px}.choice:has(input:checked){border-color:var(--ember);background:#fff6f0}.choice small{color:var(--muted);margin-top:2px;font-size:.8rem;display:block}.quiz-q+.quiz-q{margin-top:22px}.rec-list{gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.rec-list li{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;padding:12px 14px}.rec-list b{display:block}.meter{background:var(--line-2);border-radius:99px;height:12px;margin:8px 0 4px;overflow:hidden}.meter span{background:linear-gradient(90deg, var(--ember), var(--amber));border-radius:99px;height:100%;transition:width .3s;display:block}.checklist{gap:8px;margin:0;padding:0;list-style:none;display:grid}.checklist-head{margin:22px 0 8px;font-size:1.05rem}.countdown{flex-wrap:wrap;gap:14px;margin-top:22px;display:flex}.countdown div{border-radius:var(--radius-sm);background:#ffffff14;border:1px solid #ffffff29;align-items:center;gap:12px;max-width:360px;padding:12px 18px;display:flex}.countdown b{font:700 2.2rem/1 var(--head);color:var(--amber)}.countdown span{color:#e6ddd3;font-size:.88rem;line-height:1.3}.month-nav{z-index:5;background:var(--bg);flex-wrap:wrap;gap:6px;margin-bottom:26px;padding:10px 0;display:flex;position:sticky;top:70px}.month-nav a{border:1px solid var(--line);font:600 .8rem/1 var(--head);letter-spacing:.05em;text-transform:uppercase;color:var(--ink);background:#fff;border-radius:99px;padding:6px 12px;text-decoration:none}.month-nav a:hover{border-color:var(--ember);color:var(--ember-dark)}.cal-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;display:grid}.cal-month{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);border-top:4px solid var(--ember);padding:22px;scroll-margin-top:130px}.cal-month h2{margin-bottom:12px;font-size:1.5rem}.cal-event{border-radius:var(--radius-sm);background:#fbf7f1;margin-bottom:12px;padding:14px 16px}.cal-event h3{margin:6px 0 4px;font-size:1.08rem}.cal-event p{margin:0 0 6px;font-size:.9rem}.cal-tag{background:var(--ember);color:#fff;font:600 .68rem/1 var(--head);letter-spacing:.1em;text-transform:uppercase;border-radius:4px;padding:4px 8px;display:inline-block}.cal-meta{color:var(--ink-2);font-weight:500}.cal-src{color:var(--muted);font-size:.78rem!important}.cal-src a{color:inherit}.cal-holiday{border-left:3px solid var(--amber);background:var(--amber-soft);border-radius:0 6px 6px 0;margin:0 0 8px;padding:8px 12px;font-size:.9rem}.cal-holiday b{font-family:var(--head);margin-right:6px}.cal-tips{color:var(--ink-2);margin:12px 0 0;padding-left:18px;font-size:.9rem}.cal-tips li{margin-bottom:6px}@media (width<=600px){.cal-grid{grid-template-columns:1fr}.month-nav{top:60px}}@media (width<=900px){.article-hero-grid{grid-template-columns:1fr;gap:22px;padding:28px 0 24px}.article-figure img{aspect-ratio:16/9;max-height:220px}}.hands-on{border-radius:var(--radius-sm);background:#f3f7f0;border:1px solid #cfe0c3;border-left:5px solid #5b8c3a;margin:0 0 28px;padding:18px 22px}.hands-on-title{font:600 .8rem/1 var(--head);letter-spacing:.1em;text-transform:uppercase;color:#3f6b22;margin:0 0 10px}.hands-on img{border-radius:var(--radius-sm);object-fit:cover;width:100%;max-height:320px;margin:0 0 12px}.hands-on p{margin:0 0 8px}.hands-on-by{color:var(--muted);font-size:.85rem;margin:0!important}
