:root{--ink:#4a464f;--ink-strong:#2c2a33;--muted:#8f8a93;--pink:#e5457b;--pink-soft:#f6b6cc;--rose:#d18a9e;--rose-dark:#c2778d;--teal:#16a08a;--teal-dark:#128773;--gold:#f5b301;--star-off:#e2dde2;--banner-1:#f9c4d7;--banner-2:#ef9fbd;--bg:#fff;--bg-soft:#fdf5f8;--border:#efe7ec;--col:640px;--radius:16px;--script:"Great Vibes", "Segoe Script", cursive;--sans:"Poppins", system-ui, "Segoe UI", Roboto, sans-serif;font:16px/1.65 var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1,h2,h3,h4{color:var(--ink-strong);margin:0;line-height:1.2}p{margin:0}a{color:inherit}.hl{color:var(--pink);font-weight:600}.lnk{color:var(--pink);text-underline-offset:2px;font-weight:600;text-decoration:underline}.article{width:100%;max-width:var(--col);background:var(--bg);margin:0 auto;overflow:hidden}.article-header,.intro,.criteria,.ranking,.winner-recap,.testimonials,.faq,.author-bio,.final-cta,.site-footer,.author-top{padding-inline:22px}.prose p{margin-bottom:16px}.prose p:last-child{margin-bottom:0}.brandbar{background:linear-gradient(150deg, var(--banner-1), var(--banner-2));text-align:center;padding:20px 16px;position:relative;overflow:hidden}.brand-logo{font-family:var(--script);color:#fff;text-shadow:0 1px 4px #b4466e47;font-size:44px;font-weight:400;line-height:1}.sparkle{color:#fff;opacity:.85;pointer-events:none;position:absolute}.sparkle.s1{font-size:12px;top:14px;left:24px}.sparkle.s2{opacity:.7;font-size:9px;top:28px;left:60px}.sparkle.s3{font-size:13px;top:16px;right:30px}.sparkle.s4{opacity:.7;font-size:10px;bottom:16px;right:64px}.author-top{text-align:center;padding-top:22px;padding-bottom:6px}.author-photo{object-fit:cover;width:84px;height:84px;box-shadow:0 0 0 2px var(--pink-soft);border:3px solid #fff;border-radius:50%;margin:0 auto 10px;display:block}.author-photo.placeholder{background:linear-gradient(135deg, var(--pink), var(--rose));color:#fff;font-size:32px;font-weight:700;font-family:var(--sans);place-items:center;display:grid}.author-name{color:var(--pink);font-size:15px;font-weight:700}.author-role{color:var(--muted);font-size:13.5px;font-style:italic}.author-date{color:var(--muted);margin-top:2px;font-size:13px}.article-header{padding-top:14px;padding-bottom:6px}.headline{letter-spacing:-.5px;margin-bottom:18px;font-size:30px;font-weight:800;line-height:1.18}.subhead{color:var(--teal);font-size:20px;font-weight:700}.hero-wrap{padding:16px 22px 6px}.hero-strip{border-radius:12px;width:100%;height:auto;display:block}.hero-strip.placeholder{aspect-ratio:16/9;text-align:center;color:var(--pink);border:1px solid var(--border);background:repeating-linear-gradient(45deg,#fbe6ee 0 14px,#fdf1f6 14px 28px);place-content:center;gap:4px;display:grid}.hero-strip.placeholder span{font-size:14px;font-weight:700}.hero-strip.placeholder small{opacity:.8;font-size:12px}.intro{padding-top:18px}.intro p{color:var(--ink)}.cta{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:9px;padding:15px 26px;font-size:16px;font-weight:700;text-decoration:none;transition:transform .15s,background .15s,box-shadow .15s;display:inline-flex}.cta-soft{background:var(--rose);color:#fff;box-shadow:0 8px 18px -10px #965a6e99}.cta-soft:hover{background:var(--rose-dark);transform:translateY(-1px)}.cta-block{width:100%;display:flex}.cart{flex:none;width:19px;height:19px}.intro .cta{margin-top:22px}.criteria{padding-top:22px}.crit-title{color:var(--pink);margin:24px 0 8px;font-size:23px;font-weight:700}.criteria p{color:var(--ink)}.rank-banner{background:var(--teal);color:#fff;text-align:center;letter-spacing:.4px;text-transform:uppercase;margin:28px 0 10px;padding:16px 20px;font-size:18px;font-weight:700;line-height:1.25}.ranking{padding-top:6px}.product{text-align:center;border-bottom:1px solid var(--border);padding:26px 0 30px}.product:last-child{border-bottom:none}.product-name{letter-spacing:-.4px;font-size:27px;font-weight:800}.product-brand{color:var(--muted);margin-top:2px;font-size:14px}.product-price{color:var(--pink);margin-top:8px;font-size:18px;font-weight:700}.product-photo{margin:16px 0}.product-photo .img,.product-photo .product-img{border-radius:var(--radius);width:100%;display:block}.product-photo .img-placeholder{aspect-ratio:4/3;border-radius:var(--radius);border:1px solid var(--border);width:100%;color:var(--pink);background:radial-gradient(circle at 50% 45%,#fbe3ec,#f7cede);place-content:center;gap:4px;display:grid}.img-placeholder span{font-weight:700}.img-placeholder small{opacity:.8;font-size:12px}.rating-label{color:var(--teal);margin-top:6px;font-size:19px;font-weight:600}.rating-score{color:var(--teal);margin:2px 0 6px;font-size:44px;font-weight:800;line-height:1}.rating-score span{font-size:20px;font-weight:700}.rating-stars{margin-bottom:18px}.stars{letter-spacing:3px;font-size:22px}.star.on{color:var(--gold)}.star.off{color:var(--star-off)}.star.half{background:linear-gradient(90deg, var(--gold) 50%, var(--star-off) 50%);color:#0000;-webkit-background-clip:text;background-clip:text}.product .cta{max-width:340px;margin:6px auto 0}.analysis-title{text-align:left;color:var(--ink-strong);margin:24px 0 10px;font-size:17px;font-weight:700}.analysis{text-align:left}.analysis p{color:var(--ink)}.pc-title{text-align:left;margin:22px 0 12px;font-size:21px;font-weight:700}.pros-title{color:var(--teal)}.cons-title{color:var(--pink)}.pros,.cons{text-align:left;margin:0;padding:0;list-style:none}.pros li,.cons li{align-items:flex-start;gap:11px;margin-bottom:11px;font-size:15px;font-weight:500;line-height:1.4;display:flex}.ic{flex:none;width:21px;height:21px;margin-top:1px}.ic.ok{color:var(--teal)}.ic.no{color:var(--pink)}.product.is-winner .product-name{position:relative}.winner-recap{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius);text-align:center;margin:30px 22px;padding:28px 22px}.winner-recap .prose{text-align:left}.eyebrow{color:var(--pink);letter-spacing:1.4px;font-size:12.5px;font-weight:700}.recap-heading{margin:6px 0 14px;font-size:26px;font-weight:800}.highlights{grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0;display:grid}.highlight{border:1px solid var(--border);background:#fff;border-radius:12px;padding:14px 6px}.highlight-stat{color:var(--teal);font-size:22px;font-weight:800;display:block}.highlight-label{color:var(--muted);margin-top:4px;font-size:12px;display:block}.testimonials{text-align:center;padding-top:40px}.testimonials h2{color:var(--pink);margin-bottom:22px;font-size:24px;font-weight:800}.testimonial-grid{text-align:left;gap:14px;display:grid}.testimonial{background:var(--bg-soft);border:1px solid var(--border);border-radius:14px;margin:0;padding:18px}.testimonial .stars{letter-spacing:1px;font-size:16px}.testimonial blockquote{color:var(--ink-strong);margin:10px 0 12px;font-size:14.5px;line-height:1.5}.testimonial figcaption{flex-direction:column;display:flex}.t-name{font-size:14px;font-weight:700}.t-detail{color:var(--teal);font-size:12.5px;font-weight:600}.faq{padding-top:44px}.faq h2{text-align:center;margin-bottom:20px;font-size:24px;font-weight:800}.faq-item{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:10px;overflow:hidden}.faq-item summary{cursor:pointer;color:var(--ink-strong);justify-content:space-between;align-items:center;gap:12px;padding:15px 16px;font-size:15.5px;font-weight:700;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item .chev{color:var(--pink);font-size:22px;font-weight:400;transition:transform .2s}.faq-item[open] .chev{transform:rotate(45deg)}.faq-item p{color:var(--ink);padding:0 16px 16px;font-size:14.5px}.author-bio{border-top:1px solid var(--border);align-items:flex-start;gap:14px;margin-top:44px;padding-top:24px;padding-bottom:24px;display:flex}.author-avatar{background:linear-gradient(135deg, var(--pink), var(--rose));color:#fff;border-radius:50%;flex:none;place-items:center;width:54px;height:54px;font-size:22px;font-weight:700;display:grid}.author-detail{flex-direction:column;display:flex}.bio-name{color:var(--ink-strong);font-size:16px;font-weight:700}.bio-role{color:var(--pink);margin-bottom:8px;font-size:13px;font-weight:600}.author-detail p{color:var(--muted);font-size:14.5px}.final-cta{text-align:center;background:var(--bg-soft);border-top:1px solid var(--border);margin-top:8px;padding-top:40px;padding-bottom:40px}.final-cta h2{color:var(--ink-strong);margin-bottom:10px;font-size:25px;font-weight:800}.final-cta p{color:var(--ink);max-width:440px;margin:0 auto 22px}.final-cta .cta{max-width:380px;margin:0 auto}.site-footer{text-align:center;background:var(--bg-soft);padding-top:26px;padding-bottom:30px}.footer-disclosure{color:var(--muted);max-width:520px;margin:0 auto 14px;font-size:12px;line-height:1.5}.footer-nav{justify-content:center;gap:18px;margin-bottom:12px;display:flex}.footer-nav a{color:var(--ink);font-size:13px;text-decoration:none}.footer-nav a:hover{color:var(--pink)}.copyright{color:var(--muted);font-size:12px}@media (width>=560px){.headline{font-size:34px}.testimonial-grid{grid-template-columns:repeat(3,1fr)}}
