@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";:root{--ink: #1E2A3A;--ink-soft: #2C3A4E;--ink-mute: #4F5C71;--line: #E2D7C6;--line-soft: #EFE7DA;--cream: #FFFBF0;--cream-deep: #FAF3E2;--amber: #F59E0B;--amber-deep: #D97706;--amber-bg: #FFF1D6;--winner-bg: #FFF8E5;--winner-border: #F59E0B;--danger: #B23A48;--good: #2E7D6A;--font-body: "IBM Plex Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-head: "Space Grotesk", "IBM Plex Sans", system-ui, sans-serif;--container: 1140px;--container-narrow: 760px;--radius: 10px;--radius-sm: 6px;--shadow-sm: 0 1px 2px rgba(30, 42, 58, .06);--shadow-md: 0 6px 18px rgba(30, 42, 58, .08);--shadow-amber: 0 6px 24px rgba(245, 158, 11, .18)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);font-size:17px;line-height:1.62;color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{max-width:100%;height:auto;display:block}a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--amber);text-underline-offset:3px;text-decoration-thickness:2px}a:hover{color:var(--amber-deep)}h1,h2,h3,h4,h5{font-family:var(--font-head);color:var(--ink);letter-spacing:-.01em;line-height:1.18;margin:0 0 .6em;font-weight:700}h1{font-size:clamp(2rem,4.2vw,3.1rem);letter-spacing:-.02em}h2{font-size:clamp(1.5rem,2.8vw,2.05rem);margin-top:2.2em}h3{font-size:clamp(1.2rem,2vw,1.45rem);margin-top:1.6em}h4{font-size:1.1rem;margin-top:1.4em}p{margin:0 0 1.1em}strong{color:var(--ink);font-weight:600}small{font-size:.85em;color:var(--ink-mute)}ul,ol{padding-left:1.3rem;margin:0 0 1.2em}li{margin-bottom:.4em}blockquote{border-left:3px solid var(--amber);margin:1.5em 0;padding:.2em 0 .2em 1.1em;color:var(--ink-soft);font-style:italic}code{font-family:IBM Plex Mono,ui-monospace,monospace;background:var(--cream-deep);padding:.1em .35em;border-radius:4px;font-size:.92em}hr{border:0;border-top:1px solid var(--line);margin:2.4em 0}.container{max-width:var(--container);margin:0 auto;padding:0 1.4rem}.container-narrow{max-width:var(--container-narrow);margin:0 auto;padding:0 1.4rem}.row{display:grid;gap:1.5rem}.row-2{grid-template-columns:repeat(2,minmax(0,1fr))}.row-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:760px){.row-2,.row-3{grid-template-columns:1fr}}.nav{background:var(--cream);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:saturate(140%) blur(6px)}.nav-inner{max-width:var(--container);margin:0 auto;padding:.9rem 1.4rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.brand{font-family:var(--font-head);font-weight:700;font-size:1.05rem;text-decoration:none;color:var(--ink);letter-spacing:-.01em;display:inline-flex;align-items:center;gap:.5rem}.brand-mark{width:28px;height:28px;border-radius:6px;background:var(--ink);display:inline-grid;place-items:center;color:var(--amber);font-weight:700;font-size:.95rem}.nav-links{display:flex;gap:1.4rem;align-items:center;flex-wrap:wrap}.nav-links a{text-decoration:none;color:var(--ink-soft);font-size:.95rem;font-weight:500}.nav-links a:hover{color:var(--amber-deep)}.site-footer{background:var(--ink);color:#d6dce6;margin-top:5rem;padding:3rem 1.4rem 2rem}.site-footer a{color:#f5e7c5;text-decoration-color:var(--amber)}.site-footer h4{color:#fffbf0;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.7em}.site-footer .container{display:grid;gap:2rem;grid-template-columns:2fr 1fr 1fr 1fr}@media(max-width:760px){.site-footer .container{grid-template-columns:1fr 1fr}}.footer-legal{border-top:1px solid #2A3A52;margin-top:2.5rem;padding-top:1.4rem;font-size:.83rem;color:#98a4b7;max-width:var(--container);margin-left:auto;margin-right:auto}.hero{background:radial-gradient(900px 360px at 85% -10%,var(--amber-bg) 0%,transparent 60%),linear-gradient(180deg,var(--cream) 0%,var(--cream-deep) 100%);border-bottom:1px solid var(--line);padding:4rem 1.4rem 3rem}.hero-inner{max-width:var(--container);margin:0 auto}.hero-eyebrow{display:inline-block;font-family:var(--font-head);font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--amber-deep);background:var(--amber-bg);padding:.35rem .7rem;border-radius:999px;margin-bottom:1.1rem}.hero h1{max-width:22ch;margin-bottom:.5em}.hero-sub{font-size:1.18rem;color:var(--ink-soft);max-width:60ch;margin-bottom:1.6em}.btn{display:inline-block;padding:.78rem 1.3rem;border-radius:var(--radius-sm);font-family:var(--font-head);font-weight:600;text-decoration:none;border:1.5px solid var(--ink);background:var(--ink);color:var(--cream);font-size:.97rem;transition:transform .08s ease,box-shadow .18s ease}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);color:var(--cream)}.btn-amber{background:var(--amber);border-color:var(--amber);color:var(--ink)}.btn-amber:hover{background:var(--amber-deep);border-color:var(--amber-deep);color:var(--cream);box-shadow:var(--shadow-amber)}.btn-ghost{background:transparent;color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--cream)}.top-pick{background:var(--cream);border:1.5px solid var(--line);border-left:6px solid var(--amber);border-radius:var(--radius);padding:1.8rem 1.8rem 1.5rem;margin:2rem 0;box-shadow:var(--shadow-md)}.top-pick .badge{display:inline-block;background:var(--amber);color:var(--ink);font-family:var(--font-head);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.28rem .65rem;border-radius:4px;margin-bottom:.8rem}.top-pick h2,.top-pick h3{margin-top:0}.top-pick .rating{color:var(--amber-deep);font-weight:600}.rank-card{border:1px solid var(--line);background:var(--cream);border-radius:var(--radius);padding:1.6rem 1.7rem;margin:1.3rem 0;position:relative;box-shadow:var(--shadow-sm)}.rank-card.is-winner{border-left:6px solid var(--amber);background:var(--winner-bg)}.rank-card .rank-num{position:absolute;top:1.2rem;right:1.4rem;font-family:var(--font-head);font-weight:700;font-size:2.2rem;color:var(--ink);opacity:.18;line-height:1}.rank-card h3{margin-top:0;margin-bottom:.3em}.rank-card .meta{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;font-size:.92rem;color:var(--ink-mute);margin-bottom:1rem}.rank-card .meta strong{color:var(--ink)}.rank-card .pros-cons{display:grid;gap:1.2rem;grid-template-columns:1fr 1fr;margin-top:1rem}@media(max-width:640px){.rank-card .pros-cons{grid-template-columns:1fr}}.rank-card .pros-cons h4{margin-top:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.rank-card .pros h4{color:var(--good)}.rank-card .cons h4{color:var(--danger)}.rank-card .pros-cons ul{padding-left:1.1rem;margin:0}.rank-card .pros-cons li{font-size:.95rem;margin-bottom:.3em}.cmp-wrap{overflow-x:auto;margin:1.6rem 0}table.comparison-table{width:100%;border-collapse:collapse;font-size:.93rem;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}table.comparison-table th,table.comparison-table td{padding:.75rem .85rem;text-align:left;border-bottom:1px solid var(--line-soft);vertical-align:top}table.comparison-table thead th{background:var(--ink);color:var(--cream);font-family:var(--font-head);font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}table.comparison-table tr.winner-row{background:var(--winner-bg);border-left:4px solid var(--amber)}table.comparison-table tr.winner-row td:first-child{font-weight:700}table.comparison-table .winner-cell{color:var(--amber-deep);font-weight:700}.quick-answer{background:var(--cream-deep);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1.7rem;margin:1.5rem 0 2.2rem;font-size:1.06rem;line-height:1.6}.quick-answer .qa-label{display:block;font-family:var(--font-head);font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--amber-deep);margin-bottom:.5rem;font-weight:600}.quick-answer p:last-child{margin-bottom:0}.bottom-line{background:var(--ink);color:#f5e7c5;border-radius:var(--radius);padding:1.9rem 2rem;margin:2.5rem 0 1.5rem}.bottom-line h2,.bottom-line h3{color:var(--amber);margin-top:0}.bottom-line strong{color:#fffbf0}.bottom-line a{color:var(--amber)}.bottom-line p:last-child{margin-bottom:0}.byline{display:flex;gap:.9rem;align-items:center;padding:1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:1.5rem 0;font-size:.95rem;color:var(--ink-mute)}.byline-avatar{width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--amber);display:grid;place-items:center;font-family:var(--font-head);font-weight:700;font-size:1rem}.byline strong{color:var(--ink)}.byline-dates{margin-left:auto;font-size:.88rem}.disclosure{background:var(--cream-deep);border-left:3px solid var(--ink-mute);padding:.85rem 1.1rem;font-size:.88rem;color:var(--ink-mute);border-radius:var(--radius-sm);margin:1.5rem 0}.faq-list{margin:2rem 0}.faq-item{border-bottom:1px solid var(--line);padding:1rem 0}.faq-item summary{cursor:pointer;font-family:var(--font-head);font-weight:600;font-size:1.06rem;color:var(--ink);list-style:none;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--amber-deep);font-weight:600;font-size:1.4rem;line-height:1}.faq-item[open] summary:after{content:"−"}.faq-item .faq-body{padding-top:.7rem;color:var(--ink-soft)}.faq-item .faq-body p:last-child{margin-bottom:0}.feature-grid{display:grid;gap:1.4rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:1.6rem 0}@media(max-width:880px){.feature-grid{grid-template-columns:1fr}}.feature-card{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.4rem 1.5rem;transition:transform .12s ease,box-shadow .18s ease}.feature-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.feature-card .kicker{font-family:var(--font-head);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--amber-deep);font-weight:600;margin-bottom:.6rem}.feature-card h3{font-size:1.18rem;margin-top:.2rem;margin-bottom:.5rem}.feature-card h3 a{text-decoration:none}.feature-card p{font-size:.95rem;color:var(--ink-soft);margin-bottom:0}.article{max-width:var(--container-narrow);margin:0 auto;padding:2.5rem 1.4rem 1rem}.article-wide{max-width:920px;margin:0 auto;padding:2.5rem 1.4rem 1rem}.article h2+p:first-of-type:first-line{font-weight:500}.article table{font-size:.92rem}.article .toc{background:var(--cream-deep);border-left:3px solid var(--amber);padding:1rem 1.3rem;margin:1.5rem 0;border-radius:var(--radius-sm)}.article .toc h4{margin-top:0;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}.article .toc ul{margin-bottom:0}.team-grid{display:grid;gap:1.6rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:2rem 0}@media(max-width:880px){.team-grid{grid-template-columns:1fr}}.team-card{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem}.team-card .photo{width:80px;height:80px;border-radius:50%;background:var(--ink);color:var(--amber);display:grid;place-items:center;font-family:var(--font-head);font-weight:700;font-size:1.6rem;margin-bottom:.9rem}.team-card h3{font-size:1.18rem;margin:0 0 .2rem}.team-card .role{color:var(--amber-deep);font-weight:600;font-size:.9rem;margin-bottom:.5rem;font-family:var(--font-head)}.team-card .creds{font-size:.88rem;color:var(--ink-mute);margin-bottom:.6rem}.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--cream);padding:.6rem 1rem}.skip-link:focus{left:1rem;top:1rem;z-index:100}.usecase-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:1.4rem 0}@media(max-width:640px){.usecase-grid{grid-template-columns:1fr}}.usecase-card{background:var(--cream-deep);border:1px solid var(--line);border-radius:var(--radius-sm);padding:1rem 1.2rem}.usecase-card h4{margin:0 0 .3rem;font-size:1rem;font-family:var(--font-head)}.usecase-card p{margin:0;font-size:.93rem;color:var(--ink-soft)}.usecase-card .pick{color:var(--amber-deep);font-weight:600}
