

:root{--ink:#14221d;--night:#11241e;--night-2:#1b372e;--forest:#294b3d;--muted:#596860;--paper:#f8f6ef;--cream:#efeee5;--white:#fffdf7;--line:#d9dfd5;--lime:#d8e98a;--orange:#f4ab71;--radius:22px;--max:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.58}a{color:inherit}a:hover{text-decoration-color:var(--forest)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #d49d37;outline-offset:4px}p{margin:0 0 1em}h1,h2,h3,h4{margin:0;color:inherit;line-height:1.14;letter-spacing:-.037em}h1{font-size:clamp(2.6rem,5.7vw,5.5rem);font-weight:770}h2{font-size:clamp(2rem,3.7vw,3.2rem)}h3{font-size:clamp(1.4rem,2.25vw,2.1rem)}h4{font-size:1rem;letter-spacing:0}small,.small{font-size:.88rem}main{min-height:30vh}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;z-index:99;transform:translateY(-170%);background:var(--lime);padding:12px 18px;color:var(--ink)}.skip-link:focus{transform:translateY(0)}
.site-header{background:var(--night);color:#f1f3e9;position:relative;z-index:40}.header-strip{border-bottom:1px solid #355044;color:#d9e4ce;font-size:11px;text-transform:uppercase;letter-spacing:.18em}.strip-inner{height:33px;display:flex;align-items:center;justify-content:space-between}.strip-inner span:last-child{color:var(--lime)}.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:82px}.wordmark{text-decoration:none;display:flex;align-items:center;gap:12px;flex-shrink:0}.logo-mark{display:grid;place-items:center;border:1.5px solid var(--lime);border-radius:13px;width:40px;height:40px;color:var(--lime);font-weight:780;letter-spacing:-.08em;font-size:15px;transform:rotate(-7deg)}.logo-mark span{transform:rotate(7deg)}.logo-type{font-size:22px;font-weight:850;letter-spacing:-.055em}.logo-type span{color:var(--orange)}.desktop-nav{display:flex;align-items:center;gap:2px}.desktop-nav>.top-link,.nav-parent>.top-link{padding:13px 13px;color:#ecf1e8;text-decoration:none;white-space:nowrap;font-weight:590;font-size:13px;border-radius:8px}.desktop-nav .top-link:hover,.desktop-nav .top-link.active,.nav-parent:focus-within>.top-link{background:#264638}.nav-parent{position:relative;display:flex;align-items:center}.nav-caret{background:transparent;border:0;color:#e7eddc;padding:10px 7px 10px 0;font-size:12px}.nav-caret::before{content:'⌄'}.sub-menu{display:none;position:absolute;top:100%;left:0;min-width:235px;padding:9px;background:#fffdf8;border:1px solid #dce4d8;box-shadow:0 22px 45px #061d1435;border-radius:13px}.sub-menu a{display:block;padding:11px 13px;text-decoration:none;font-size:13px;color:#22392f;font-weight:600;border-radius:7px}.sub-menu a:hover,.sub-menu a:focus-visible{background:#e9f1e1}.nav-parent:hover .sub-menu,.nav-parent:focus-within .sub-menu{display:block}.mobile-nav{display:none}.header-deco{margin-left:6px;padding:6px 10px;color:var(--lime);border:1px solid #52705e;border-radius:100px;white-space:nowrap;font-weight:700;font-size:11px;letter-spacing:.07em}.breadcrumb{font-size:12px;font-weight:650;color:#6b796e;display:flex;flex-wrap:wrap;align-items:center;gap:11px;padding-top:26px}.breadcrumb a{text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb .sep{color:#a6b1a6}.hero{background:radial-gradient(ellipse at 88% 5%,#e2e9d8 0%,transparent 45%),linear-gradient(160deg,#f3f3e8,#faf8f1 70%);padding-bottom:62px;border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(36px,5vw,75px);align-items:center;padding-top:70px}.eyebrow{font-size:11px;font-weight:850;letter-spacing:.19em;text-transform:uppercase;color:#53735c}.hero h1{margin:15px 0 24px;max-width:770px}.hero h1 em{font-style:normal;color:#5a755b}.hero .lead{font-size:clamp(1.02rem,1.6vw,1.24rem);max-width:670px;color:#41564c;line-height:1.7}.hero strong{color:#182f26}.hero-actions{display:flex;gap:15px;flex-wrap:wrap;margin:28px 0}.btn{display:inline-flex;align-items:center;gap:16px;padding:14px 21px;font-size:13px;font-weight:800;text-decoration:none;border-radius:999px;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--night);color:white}.btn-primary:hover{background:#305743}.btn-ghost{border:1px solid #bdc9be;color:var(--ink)}.hero-footnote{font-size:12px;color:#647268;max-width:620px}.hero-feature{background:var(--night);color:#f8fff2;border-radius:24px;box-shadow:0 22px 44px #19281b24;overflow:hidden;position:relative}.hero-feature:before{content:'';width:250px;height:250px;background:#688e56;filter:blur(100px);opacity:.15;position:absolute;right:-90px;top:-110px}.panel-inner{padding:34px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#d4e5c9;font-size:11px;letter-spacing:.15em;font-weight:800;text-transform:uppercase}.panel-head .pill{color:#19251d;background:var(--lime);padding:7px 10px;border-radius:80px;letter-spacing:.04em}.big-score{margin:43px 0 6px;display:flex;align-items:baseline;gap:8px;font-size:clamp(4rem,8.6vw,7.4rem);line-height:1;font-weight:820;letter-spacing:-.09em}.big-score span{font-size:1.15rem;letter-spacing:0;color:#a3b2a4}.panel-winner{font-size:23px;font-weight:800;letter-spacing:-.03em}.panel-note{font-size:13px;color:#c4d4c5;margin:10px 0 23px}.panel-divider{border-top:1px solid #42614e;padding:19px 0 0;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.panel-divider strong{font-size:15px}.panel-divider small{display:block;color:#bbd0bc;font-size:12px}.panel-divider .alt-score{color:var(--lime);font-size:31px;line-height:1;font-weight:820;letter-spacing:-.05em}.meta-strip{border-top:1px solid #dae2d6;margin-top:53px;padding-top:23px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.meta-item{display:flex;gap:13px;align-items:center}.meta-number{font-size:32px;font-weight:820;letter-spacing:-.06em;line-height:1}.meta-number.shape{font-size:25px}.meta-text{font-size:12px;color:#66776b;line-height:1.35;font-weight:600}.section{padding-block:85px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.section-head p{max-width:545px;color:#607269}.section-subtitle{font-size:13px;color:#6b7e72;max-width:580px;margin-top:13px}.jump-nav{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-bottom:38px}.jump-nav a{background:#e7eee4;border:1px solid #d4e0d2;border-radius:100px;padding:7px 15px;font-size:12px;font-weight:750;text-decoration:none}.jump-nav a:hover{background:#dce7d7}.picks{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.pick-card{border:1px solid #dbe3d7;background:var(--white);border-radius:19px;padding:28px;grid-column:span 4;min-height:270px;display:flex;flex-direction:column}.pick-card.large{grid-column:span 6;background:var(--night);color:white;border:0}.pick-card.large.secondary{background:#e9ede2;color:var(--ink);border:1px solid #d6e0d4}.pick-card .pick-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800;color:#5b8266}.pick-card.large .pick-kicker{color:#b8d69d}.pick-card.large.secondary .pick-kicker{color:#4f795f}.pick-card h3{font-size:clamp(1.4rem,2.2vw,2rem);margin:15px 0 11px}.pick-card p{font-size:13px;line-height:1.7;color:#607268;flex:1}.pick-card.large p{color:#cddccc}.pick-card.large.secondary p{color:#526c5d}.pick-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #d7e0d3;padding-top:17px;margin-top:20px}.pick-card.large .pick-bottom{border-top-color:#3c5546}.pick-card .pick-score{font-size:24px;font-weight:850;letter-spacing:-.05em}.pick-bottom a{text-decoration:none;font-size:12px;font-weight:800}.pick-bottom a:hover{text-decoration:underline}.comparison-section{background:#edf0e8;border-top:1px solid #d9e2d7;border-bottom:1px solid #d9e2d7}.table-wrap{border:1px solid #d3dfd2;background:#fffdf8;border-radius:18px;overflow-x:auto;box-shadow:0 7px 20px #1942290a}.comparison-table{border-collapse:collapse;width:100%;min-width:800px;text-align:left}.comparison-table th{font-size:11px;color:#597361;letter-spacing:.12em;text-transform:uppercase;background:#e4ece1;padding:17px 20px;white-space:nowrap}.comparison-table td{padding:17px 20px;border-top:1px solid #e7eae2;vertical-align:top;font-size:13px}.comparison-table tr:hover td{background:#f5f7f0}.comparison-table .product-link{font-weight:800;text-decoration:none;color:#173f2c}.comparison-table .product-link:hover{text-decoration:underline}.comparison-table .ranking{color:#68796f;font-size:11px;margin-top:3px;white-space:nowrap}.comparison-table .numeric{font-weight:830;font-size:16px;font-variant-numeric:tabular-nums;white-space:nowrap}.comparison-table .highlight-row{background:#f5f9e9}.compare-note{font-size:12px;color:#687d70;margin-top:15px}.method-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.method-copy p{color:#52665b;line-height:1.8}.method-criteria{background:#fffdf8;border:1px solid #dce4d8;padding:31px;border-radius:22px}.criteria-header{font-size:12px;color:#61796b;text-transform:uppercase;letter-spacing:.14em;font-weight:850;margin:0 0 14px}.criteria-list{counter-reset:criteria;list-style:none;padding:0;margin:0}.criteria-list li{padding:13px 0;border-bottom:1px solid #e8ebe4;display:flex;align-items:center;gap:15px;font-weight:730}.criteria-list li:before{counter-increment:criteria;content:counter(criteria,decimal-leading-zero);color:#718b6f;font-size:12px;font-weight:800}.criteria-list li:last-child{border-bottom:0}.method-callout{font-size:12px;background:#eef2e6;border-left:3px solid #678568;padding:16px 19px;margin-top:20px;color:#4b6756}.review-section{padding-top:88px}.review-stack{display:flex;flex-direction:column;gap:23px}.product-review{border:1px solid #dae3d8;border-radius:23px;background:#fffefa;overflow:hidden;scroll-margin-top:100px}.review-top{display:grid;grid-template-columns:1fr auto;gap:20px;padding:30px 34px 26px;border-bottom:1px solid #e2e8df}.review-rank{font-size:11px;color:#557866;font-weight:840;text-transform:uppercase;letter-spacing:.14em;display:block;margin-bottom:10px}.review-title{font-size:clamp(1.55rem,2.8vw,2.4rem);line-height:1.15}.review-verdict{max-width:830px;color:#53695c;font-size:15px;margin:11px 0 0}.review-score{display:flex;flex-direction:column;justify-content:center;text-align:right;min-width:98px}.review-score b{font-size:36px;letter-spacing:-.07em;line-height:1;color:#1f4d36}.review-score span{font-size:10px;letter-spacing:.06em;color:#68776c;font-weight:800;text-transform:uppercase}.review-body{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;padding:27px 34px 31px}.review-copy h4,.spec-box h4{font-size:11px;font-weight:880;letter-spacing:.13em;text-transform:uppercase;color:#5b7764;margin:0 0 7px}.review-copy p{font-size:14px;color:#526257;line-height:1.68;margin:0 0 19px}.review-points{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px}.review-points p{font-size:13px;margin:0;line-height:1.6}.review-side{border-left:1px solid #e0e7dc;padding-left:30px}.spec-box{background:#f0f4ed;border-radius:15px;padding:22px}.spec-box ul{padding-left:18px;margin:6px 0 12px;color:#435b4a;font-size:12px;line-height:1.7}.spec-box li{margin:6px 0}.spec-box li a{color:#2d6545;white-space:nowrap;text-decoration-thickness:1px;text-underline-offset:2px}.spec-explainer{font-size:11px;color:#718273;margin:0}.compare-alternative{margin-top:15px;font-size:12px;color:#52675a}.compare-alternative b{color:#244b36}.alert{background:#fff5e8;border:1px solid #efcda7;padding:17px 18px;border-radius:13px;margin-top:17px;font-size:12px;line-height:1.65;color:#684629}.alert strong{display:block;color:#694126;margin-bottom:5px}.alert a{font-weight:800}.faq-section{background:#edf0e8;border-block:1px solid #d9e2d7}.faq-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}.faq-item{border:1px solid #d9e3d6;background:#fffefa;border-radius:16px;padding:24px}.faq-item h3{font-size:18px;letter-spacing:-.02em;margin-bottom:11px}.faq-item p{color:#597162;font-size:14px;margin:0}.source-section{padding-bottom:110px}.source-intro{max-width:780px;color:#607265}.source-list{display:grid;grid-template-columns:1fr 1fr;column-gap:35px;row-gap:7px;list-style:none;padding:0;margin-top:27px}.source-list li{padding:9px 0;border-bottom:1px solid #e3e9df;font-size:13px}.source-list a{color:#285841;text-decoration-color:#aebcb0;text-underline-offset:3px}.source-list a:hover{text-decoration-color:#285841}.disclosure{border-radius:15px;margin-top:30px;background:#e8eee3;color:#37513d;padding:19px 23px;font-size:13px}.disclosure strong{display:inline-block;margin-right:5px}.site-footer{background:var(--night);color:#dbe7d9;padding:40px 0 33px}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:start}.footer-desc{font-size:13px;color:#aebfb0;margin-top:14px;max-width:410px}.footer-links{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:14px 25px}.footer-links a{font-size:13px;text-decoration:none;color:#dae8d7}.footer-links a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #365042;margin-top:27px;padding-top:16px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#a9bcae}.empty-main{min-height:55vh;background:#f8f6ef}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1120px){.desktop-nav>.top-link,.nav-parent>.top-link{padding-left:8px;padding-right:8px;font-size:12px}.header-deco{display:none}.hero-grid{gap:40px}}
@media(max-width:930px){.desktop-nav{display:none}.mobile-nav{display:block;margin-left:auto;position:relative}.mobile-nav>summary{cursor:pointer;list-style:none;color:#f7f8ed;border:1px solid #436249;padding:10px 16px;border-radius:10px;font-weight:800;font-size:13px}.mobile-nav>summary::-webkit-details-marker{display:none}.mobile-nav>summary:after{content:'☰';margin-left:12px;color:var(--lime)}.mobile-nav[open]>summary:after{content:'×';font-size:16px}.mobile-nav-panel{position:absolute;right:0;top:calc(100% + 12px);width:min(380px,calc(100vw - 35px));background:#fffdf8;color:#183328;border:1px solid #dce2d8;box-shadow:0 30px 70px #0c211948;border-radius:15px;padding:14px;max-height:75vh;overflow:auto}.mobile-nav-panel a{display:block;text-decoration:none;padding:10px 12px;font-size:14px;font-weight:700}.mobile-nav-panel a:hover{background:#e7eee5}.mobile-category{border-top:1px solid #ebefea}.mobile-category summary{font-size:14px;font-weight:800;cursor:pointer;padding:12px;list-style:none}.mobile-category summary:after{content:'+';float:right;color:#57735c}.mobile-category[open] summary:after{content:'−'}.mobile-category .sub-links{padding:0 0 8px 15px}.mobile-category a{font-size:13px}.hero-grid{grid-template-columns:1fr}.hero-feature{max-width:720px}.meta-strip{grid-template-columns:repeat(2,1fr)}.method-grid{grid-template-columns:1fr;gap:28px}.review-body{grid-template-columns:1fr;gap:18px}.review-side{border-left:0;border-top:1px solid #e0e7dc;padding-left:0;padding-top:20px}}
@media(max-width:680px){.container{width:calc(100% - 34px)}.strip-inner{font-size:9px;letter-spacing:.08em}.strip-inner span:last-child{display:none}.nav-shell{min-height:72px}.logo-type{font-size:20px}.hero-grid{padding-top:39px}.hero{padding-bottom:42px}.hero h1{margin-bottom:20px}.hero .lead{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.btn{justify-content:center}.panel-inner{padding:24px}.big-score{margin-top:25px;font-size:70px}.meta-strip{gap:19px 12px;margin-top:36px}.meta-number{font-size:27px}.meta-text{font-size:11px}.section{padding-block:62px}.section-head{display:block}.picks{grid-template-columns:1fr}.pick-card,.pick-card.large{grid-column:auto;min-height:240px}.pick-card{padding:22px}.review-top{padding:24px 22px;gap:12px}.review-score{min-width:70px}.review-score b{font-size:29px}.review-score span{font-size:9px}.review-body{padding:23px 22px}.review-points{grid-template-columns:1fr;gap:16px}.faq-list,.source-list,.footer-grid{grid-template-columns:1fr}.footer-links{justify-content:flex-start}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:5px}.source-section{padding-bottom:75px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}


/* Manufacturer / retailer-hosted product imagery: crawlable native HTML images. */
.review-top{grid-template-columns:minmax(0,1fr) 182px auto;align-items:center}
.review-product-media{margin:0;min-width:0;text-align:center;align-self:center}
.review-product-media img{display:block;width:100%;max-width:176px;height:165px;object-fit:contain;object-position:center;background:#f7f8f4;border:1px solid #e2e9de;border-radius:15px;margin-inline:auto}
.review-product-media figcaption{font-size:10px;line-height:1.3;color:#607268;margin-top:6px}
.review-product-media figcaption a{text-underline-offset:2px}
@media(max-width:780px){.review-top{grid-template-columns:minmax(0,1fr) auto;align-items:start}.review-top>.review-product-media{grid-row:2;grid-column:1/-1;margin-top:8px}.review-product-media img{width:180px;height:175px;max-width:100%}.review-top>.review-score{grid-column:2;grid-row:1}}


/* Larger product images with click-to-enlarge controls. */
.review-top{grid-template-columns:minmax(0,1fr) 250px auto;column-gap:24px;align-items:center}
.review-product-media{width:100%;margin:0;min-width:0;text-align:center;align-self:center}
.review-product-media .image-zoom-trigger{position:relative;display:block;width:100%;max-width:245px;margin-inline:auto;border-radius:17px;text-decoration:none;cursor:zoom-in;overflow:hidden;border:1px solid #e2e9de;background:#f7f8f4;transition:border-color .18s ease,box-shadow .18s ease}
.review-product-media .image-zoom-trigger:hover{border-color:#9bb29d;box-shadow:0 9px 30px #1a412317}
.review-product-media .image-zoom-trigger:focus-visible{outline:3px solid #d49d37;outline-offset:4px}
.review-product-media img{display:block;width:100%;height:225px;max-width:none;object-fit:contain;object-position:center;border:0;border-radius:0;margin:0;background:transparent}
.review-product-media .zoom-hint{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#11241de9;color:#fff;padding:6px 11px;border-radius:99px;font-size:11px;font-weight:750;line-height:1.2;box-shadow:0 3px 12px #0002}
.review-product-media figcaption{font-size:11px;line-height:1.45;margin-top:9px}
/* Native dialog: keyboard Esc and focus management are handled by the browser. */
.product-image-lightbox{background:transparent;border:0;padding:36px 12px 20px;width:min(98vw,1100px);max-width:none;max-height:96vh;overflow:visible;color:#f9fff6}
.product-image-lightbox::backdrop{background:rgba(3,16,10,.88);backdrop-filter:blur(5px)}
.lightbox-panel{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;max-height:calc(96vh - 56px);min-width:0}
.lightbox-full-image{display:block;width:auto;max-width:100%;max-height:calc(96vh - 116px);height:auto;object-fit:contain;background:#fffdf8;border-radius:14px;box-shadow:0 22px 64px #0008}
.lightbox-caption{font-size:13px;line-height:1.45;color:#edf5ea;text-align:center;margin:0}
.lightbox-close{position:absolute;top:-39px;right:0;border:1px solid #c8d9cf66;border-radius:999px;background:#fffdf8;color:#11241e;font-weight:850;padding:7px 14px;font-size:13px;cursor:pointer;min-height:35px}
.lightbox-close:hover{background:#d8e98a}
@media(max-width:930px){.review-top{grid-template-columns:minmax(0,1fr) 220px auto;gap:18px}.review-product-media .image-zoom-trigger{max-width:210px}.review-product-media img{height:195px}}
@media(max-width:780px){.review-top{grid-template-columns:minmax(0,1fr) auto;align-items:start}.review-top>.review-product-media{grid-row:2;grid-column:1/-1;justify-self:center;margin-top:14px;max-width:285px}.review-top>.review-score{grid-column:2;grid-row:1}.review-product-media .image-zoom-trigger{max-width:280px}.review-product-media img{height:245px}}
@media(max-width:420px){.review-top>.review-product-media{width:100%;max-width:265px}.review-product-media img{height:235px}.product-image-lightbox{padding:45px 5px 16px}.lightbox-close{top:-40px}}
@media(prefers-reduced-motion:reduce){.review-product-media .image-zoom-trigger{transition:none}}

@media(min-width:931px) and (max-width:1160px){.desktop-nav>.top-link,.nav-parent>.top-link{font-size:11px;padding:9px 6px}.nav-shell{gap:9px}.nav-caret{padding-right:2px}}
@media(min-width:931px) and (max-width:1020px){.logo-type{font-size:18px}.logo-mark{width:33px;height:33px}.desktop-nav>.top-link,.nav-parent>.top-link{font-size:10.5px}}

.sg-tested-cta{padding:25px 0;background:#e5ecdf;color:#254734}.sg-tested-cta p{margin:0;font-size:13px;line-height:1.75}.sg-tested-cta a{font-weight:800;text-underline-offset:3px}