/* Cooks Gift — LAB EDITION: test-lab equipment review publication. Sharp, analytical, zero coziness. */
:root{
  --bg:#f4f5f4; --bg-soft:#e9ebe9;
  --paper:#ffffff; --paper-line:#d9ddd9;
  --ink:#14181b; --ink-soft:#3d454b; --muted:#6d767d;
  --slate:#232b31; --slate-deep:#141a1e; --slate-soft:#eef1f2;
  --orange:#e87722; --orange-deep:#c85f14; --orange-soft:#fdf0e3;
  --red:#b3402e; --green:#2e7d4f;
  --radius:4px;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--sans);color:var(--ink-soft);background:var(--bg);line-height:1.7;font-size:16.5px;-webkit-font-smoothing:antialiased}
a{color:#1a5c8a;text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
img{max-width:100%}
/* ---- header: utilitarian lab bar ---- */
header.site{background:#fff;border-bottom:2px solid var(--slate);position:sticky;top:0;z-index:50}
.nav{display:flex;align-items:center;gap:20px;padding:12px 0}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink)}
.logo:hover{text-decoration:none}
.logo-mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:var(--slate);color:#fff;font-size:12px;font-weight:800;letter-spacing:.5px;border-radius:3px}
.logo-accent{display:none}
.tagline{font-size:11.5px;color:var(--muted);letter-spacing:1px;text-transform:uppercase;border-left:1px solid var(--paper-line);padding-left:20px;white-space:nowrap}
.nav-links{display:flex;gap:26px;margin-left:auto;font-size:12.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
.nav-links a{color:var(--ink-soft)}
.nav-links a:hover{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--slate);padding-bottom:2px}
/* ---- hero: compact lab intro ---- */
.hero{padding:56px 0 48px;background:#fff;border-bottom:1px solid var(--paper-line)}
.kicker{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:#fff;background:var(--slate);padding:6px 12px;border-radius:3px;margin-bottom:16px}
.hero h1{font-size:clamp(30px,4.5vw,46px);font-weight:800;line-height:1.15;max-width:780px;margin:0 0 14px;color:var(--ink);letter-spacing:-.5px}
.hero h1 em{font-style:normal;color:var(--ink-soft)}
.hero p{color:var(--muted);font-size:17px;max-width:660px}
.trust-row{display:flex;gap:28px;margin-top:24px;flex-wrap:wrap;font-size:13.5px;color:var(--muted)}
.trust-row b{color:var(--ink);font-variant-numeric:tabular-nums}
/* ---- sections & cards ---- */
.section{padding:52px 0}
.section-head{margin-bottom:30px;border-bottom:2px solid var(--slate);padding-bottom:12px}
.section-head h2{font-size:20px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--ink);margin:0}
.section-head .sub{color:var(--muted);font-size:14.5px;margin-top:6px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:20px}
.card{border:1px solid var(--paper-line);border-radius:var(--radius);background:var(--paper);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s ease}
.card:hover{box-shadow:0 6px 20px rgba(20,24,27,.10)}
.card-body{padding:22px;display:flex;flex-direction:column;flex:1}
.card-tag{display:inline-block;align-self:flex-start;background:var(--slate);color:#fff;font-size:10.5px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;border-radius:3px;padding:5px 10px;margin-bottom:12px;font-variant-numeric:tabular-nums}
.card h3{font-size:18px;margin:0 0 10px;line-height:1.4;font-weight:700;letter-spacing:-.2px}
.card h3 a{color:var(--ink)}
.card h3 a:hover{color:#1a5c8a;text-decoration:none}
.card p{color:var(--muted);font-size:14.5px;flex:1}
.card-meta{font-size:12.5px;color:var(--muted);margin-top:14px;border-top:1px solid var(--paper-line);padding-top:10px;letter-spacing:.5px;text-transform:uppercase}
/* ---- article ---- */
.article{max-width:840px;margin:0 auto;padding:48px 24px 64px}
.article .kicker{background:var(--slate)}
.article h1{font-size:clamp(28px,4vw,40px);color:var(--ink);line-height:1.2;margin:14px 0 12px;font-weight:800;letter-spacing:-.5px}
.byline{font-size:13.5px;color:var(--muted);margin-bottom:24px;border-bottom:1px solid var(--paper-line);padding-bottom:16px}
.lede{font-size:18px;line-height:1.75;color:var(--ink-soft);margin-bottom:26px}
.article h2{font-size:21px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--ink);margin:42px 0 16px}
.article h2::before{content:"";display:inline-block;width:10px;height:10px;background:var(--slate);margin-right:10px}
.article h3{font-size:18px;font-weight:700;color:var(--ink);margin:26px 0 10px;letter-spacing:-.2px}
.article p{margin-bottom:16px}
.article ul,.article ol{margin:0 0 18px 22px}
.article li{margin-bottom:7px}
/* ---- HOW WE CHOSE: numbered lab criteria ---- */
.method{background:var(--slate-soft);border:1px solid var(--paper-line);border-left:4px solid var(--slate);border-radius:0 var(--radius) var(--radius) 0;padding:20px 24px;margin:26px 0;font-size:15px}
.method h4{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:var(--ink);margin-bottom:10px;font-weight:800}
.criteria{list-style:none;margin:0 0 12px;padding:0;counter-reset:crit}
.criteria li{counter-increment:crit;display:flex;gap:12px;margin-bottom:10px;font-size:14.5px}
.criteria li::before{content:counter(crit);flex-shrink:0;width:24px;height:24px;background:var(--slate);color:#fff;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;border-radius:3px}
.criteria li b{color:var(--ink)}
/* ---- OUR PICK: data-style verdict box ---- */
.our-pick{background:#fff;border:1px solid var(--paper-line);border-left:4px solid var(--slate);border-radius:0 var(--radius) var(--radius) 0;padding:22px 24px;margin:26px 0;font-size:16px}
.our-pick-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.our-pick-tag{background:var(--slate);color:#fff;font-size:11px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;padding:6px 12px;border-radius:3px}
/* ---- lab score chip: rectangular, tabular ---- */
.lab-score{display:inline-flex;align-items:baseline;gap:7px;background:var(--slate);color:#fff;font-weight:800;font-size:20px;padding:8px 14px;border-radius:3px;font-variant-numeric:tabular-nums;line-height:1}
.lab-score small{font-size:11px;font-weight:700;color:#aeb7bd}
.lab-tag{font-size:9.5px;font-weight:800;letter-spacing:2px;color:#8b959c;text-transform:uppercase}
/* ---- comparison table: zebra, sticky header, tabular ---- */
.compare-scroll{overflow-x:auto;margin:28px -24px;padding:0 24px}
.compare{display:grid;gap:0;min-width:760px;border:1px solid var(--paper-line);border-radius:var(--radius);overflow:hidden;background:var(--paper);font-variant-numeric:tabular-nums}
.compare.cols-3{grid-template-columns:150px repeat(3,1fr)}
.compare.cols-2{grid-template-columns:150px repeat(2,1fr)}
.cmp-row{display:grid;grid-template-columns:subgrid;grid-column:1/-1}
.compare>.cmp-row:nth-child(even){background:#eef0ee}
.compare>.cmp-row:first-child{background:var(--slate);position:sticky;top:61px;z-index:20}
.cmp-label{padding:15px 16px;font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--paper-line);display:flex;align-items:center}
.cmp-cell{padding:15px 18px;border-bottom:1px solid var(--paper-line);border-left:1px solid var(--paper-line);font-size:14.5px}
.cmp-head{color:#fff;padding:18px;border-left:1px solid rgba(255,255,255,.12)}
.cmp-head:first-child{border-left:none}
.cmp-head h3{color:#fff;font-size:17px;margin:0 0 4px;font-weight:700}
.cmp-head .cmp-sub{font-size:12.5px;color:#aeb7bd}
.rating-note{font-size:12.5px;color:var(--muted);margin-top:6px}
.cmp-specs .cmp-cell{font-size:14px}
.cmp-specs .cmp-cell b{color:var(--ink)}
/* pros & cons */
.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:0}
.pros-cons .pros,.pros-cons .cons{padding:15px 18px;border-bottom:1px solid var(--paper-line)}
.pros-cons .pros{border-right:1px solid var(--paper-line)}
.pros-cons h5{font-size:11px;letter-spacing:2px;text-transform:uppercase;margin-bottom:10px;font-weight:800}
.pros h5{color:var(--green)}
.cons h5{color:var(--red)}
.pros-cons ul{list-style:none;margin:0}
.pros-cons li{font-size:13.5px;margin-bottom:7px;padding-left:22px;position:relative}
.pros li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:800}
.cons li::before{content:"✕";position:absolute;left:0;color:var(--red);font-weight:800}
.cmp-cta{text-align:center}
.btn-price{display:inline-block;background:var(--orange);color:#fff;font-weight:700;font-size:14.5px;padding:11px 26px;border-radius:var(--radius);letter-spacing:.3px;transition:background .15s ease}
.btn-price:hover{background:var(--orange-deep);color:#fff;text-decoration:none}
.price-note{font-size:12px;color:var(--muted);margin-top:8px}
/* ---- TOP PICKS cards ---- */
.pick-card{background:var(--paper);border:1px solid var(--paper-line);border-radius:var(--radius);padding:26px;margin:24px 0}
.pick-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:6px}
.pick-head h3{font-size:20px;color:var(--ink);margin:0;font-weight:700}
.pick-head .lab-score{flex-shrink:0;font-size:18px}
.pick-specs{font-size:13.5px;color:var(--muted);border-top:1px solid var(--paper-line);border-bottom:1px solid var(--paper-line);padding:10px 0;margin:12px 0;font-variant-numeric:tabular-nums}
.pick-specs b{color:var(--ink-soft)}
.pick-card .pros-cons{border:1px solid var(--paper-line);border-radius:var(--radius);overflow:hidden;margin:14px 0}
.pick-verdict{font-size:15px;margin:14px 0 18px}
.pick-verdict b{color:var(--ink)}
/* ---- decision matrix ---- */
.decision{background:var(--slate-soft);border:1px solid var(--paper-line);border-radius:var(--radius);padding:20px 24px;margin:24px 0;font-size:15px}
.decision p{margin-bottom:10px}
.decision p:last-child{margin-bottom:0}
.decision strong{color:var(--ink)}
/* ---- faq / cta / misc ---- */
.faq details{border:1px solid var(--paper-line);border-radius:var(--radius);background:var(--paper);margin-bottom:10px;padding:15px 18px}
.faq summary{font-weight:700;color:var(--ink);cursor:pointer;font-size:15.5px}
.faq p{margin:10px 0 0;font-size:14.5px}
.cta-box{background:var(--slate);color:#dfe5e9;border-radius:var(--radius);padding:32px;text-align:center;margin:36px 0}
.cta-box h3{color:#fff;font-size:22px;margin-bottom:8px;font-weight:800;letter-spacing:-.2px}
.cta-box p{color:#aeb7bd;font-size:15px;margin-bottom:18px}
.cta-box .btn-price{font-size:15px}
.ad-slot{border:1px dashed var(--paper-line);border-radius:var(--radius);text-align:center;color:var(--muted);font-size:11px;letter-spacing:2px;text-transform:uppercase;padding:20px;margin:28px 0;background:var(--bg-soft)}
.budget-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:20px 0}
.budget-tier{background:var(--paper);border:1px solid var(--paper-line);border-radius:var(--radius);padding:22px}
.budget-tier .tier-price{font-size:19px;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}
.budget-tier h4{font-size:14.5px;margin:6px 0 8px;color:var(--ink);font-weight:700}
.budget-tier p{font-size:13.5px;color:var(--muted)}
.disclaimer{font-size:13px;color:var(--muted);font-style:italic;border-top:1px solid var(--paper-line);padding-top:14px;margin-top:24px}
/* ---- footer: minimal corporate ---- */
footer.site{background:var(--slate-deep);color:#aeb7bd;margin-top:40px}
footer.site .wrap{padding-top:44px;padding-bottom:26px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;margin-bottom:28px}
.foot-grid h4{color:#fff;font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}
.foot-grid .foot-brand{font-size:13.5px;color:#8b959c;line-height:1.6}
.foot-grid a{font-size:13.5px;color:#aeb7bd;display:block;margin-bottom:8px}
.foot-grid a:hover{color:#fff;text-decoration:none}
.fine{font-size:12.5px;color:#6d767d;border-top:1px solid rgba(255,255,255,.1);padding-top:18px}
/* ---- responsive ---- */
@media(max-width:820px){
  .foot-grid{grid-template-columns:1fr 1fr}
  .tagline{display:none}
}
@media(max-width:760px){
  .nav-links{gap:14px;font-size:10.5px;letter-spacing:1px}
  .logo{font-size:16px}
  .foot-grid{grid-template-columns:1fr}
  .pros-cons{grid-template-columns:1fr}
  .pros-cons .pros{border-right:none;border-bottom:1px solid var(--paper-line)}
  .pick-head{flex-direction:column}
  .compare>.cmp-row:first-child{top:53px}
}
/* ---- monetization: verdict links, where-to-buy, ad slots ---- */
.verdict-price{white-space:nowrap;color:var(--orange-deep);font-weight:700}
.verdict-price:hover{color:var(--orange)}
.where-to-buy{list-style:none;margin:14px 0 10px}
.where-to-buy li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 2px;border-bottom:1px solid var(--paper-line);font-size:14.5px;flex-wrap:wrap;font-variant-numeric:tabular-nums}
.btn-sm{padding:8px 18px;font-size:13px}
.ad-sidebar{display:none}
@media(min-width:1025px){.ad-sidebar{display:block;position:sticky;top:90px;width:300px;max-width:100%;margin:34px auto}}
/* disclosure line: subtle small print under byline */
.affiliate-note{font-size:12px;color:#8a8a8a;margin:6px 0 0;font-style:italic}
