@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-vietnamese-wght-normal.Czsa-EzN.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-ext-wght-normal.C-3rgBeH.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-wght-normal.CCVVNp6i.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Schibsted Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/_astro/schibsted-grotesk-latin-ext-wght-normal.hsMS0n0O.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Schibsted Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/_astro/schibsted-grotesk-latin-wght-normal.Bb8VGrTG.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Spline Sans Mono Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/spline-sans-mono-latin-ext-wght-normal.Dh0aNLWd.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Spline Sans Mono Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/spline-sans-mono-latin-wght-normal.DlaB5ohX.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-lg:.5rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.block{display:block}.grid{display:grid}.inline{display:inline}.table{display:table}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}:root{--paper:oklch(97.9% .005 250);--paper-2:oklch(95.8% .007 250);--paper-3:oklch(92.8% .009 252);--crema:oklch(92.5% .02 250);--ink:oklch(25.5% .018 258);--ink-2:oklch(45.5% .02 258);--ink-3:oklch(61.5% .016 258);--line:oklch(25.5% .018 258/.14);--line-2:oklch(25.5% .018 258/.07);--roast:oklch(54.5% .185 262);--roast-deep:oklch(47% .175 262);--roast-tint:oklch(54.5% .185 262/.1);--on-roast:oklch(98.5% .01 250);--spark:oklch(62% .15 62);--spark-tint:oklch(62% .15 62/.12);--t-micro:var(--spark);--t-herram:var(--spark);--t-analisis:var(--roast);--t-resena:var(--roast);--t-ensayo:var(--ink-2);--t-tutorial:var(--ink-2);--pro:oklch(55% .13 168);--con:oklch(55% .16 28);--shadow-1:0 1px 2px oklch(25.5% .018 258/.06), 0 2px 8px oklch(25.5% .018 258/.05);--shadow-2:0 8px 30px oklch(25.5% .018 258/.1);--serif:"Newsreader Variable", Georgia, "Times New Roman", serif;--sans:"Schibsted Grotesk Variable", system-ui, -apple-system, sans-serif;--mono:"Spline Sans Mono Variable", ui-monospace, "SF Mono", Menlo, monospace;--measure:64ch;--maxw:1200px;--radius:4px;--radius-lg:8px;color-scheme:light}html.dark{--paper:oklch(20% .014 262);--paper-2:oklch(24.2% .016 262);--paper-3:oklch(28.5% .018 262);--crema:oklch(30% .03 258);--ink:oklch(95% .012 250);--ink-2:oklch(78% .016 252);--ink-3:oklch(62% .016 255);--line:oklch(95% .012 250/.16);--line-2:oklch(95% .012 250/.08);--roast:oklch(70% .165 262);--roast-deep:oklch(78% .15 262);--roast-tint:oklch(70% .165 262/.16);--on-roast:oklch(18% .02 262);--spark:oklch(74% .14 64);--spark-tint:oklch(74% .14 64/.16);--pro:oklch(70% .12 168);--con:oklch(70% .15 30);--shadow-1:0 1px 2px oklch(0% 0 0/.3), 0 2px 10px oklch(0% 0 0/.3);--shadow-2:0 10px 36px oklch(0% 0 0/.45);color-scheme:dark}.ring,.cm-wordmark__ring{border-color:var(--spark)}.theme-toggle__dot{background:var(--spark)}.byline-avatar{color:var(--spark);background:var(--spark-tint)}.pip{border-color:var(--roast)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.55;transition:background-color .35s,color .35s}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}::selection{background:var(--roast);color:var(--on-roast)}h1,h2,h3,h4{font-family:var(--serif);letter-spacing:-.012em;text-wrap:balance;margin:0;font-weight:600;line-height:1.1}.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}.wrap-narrow{max-width:760px;margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}.hr{background:var(--line);border:0;height:1px;margin:0}.muted{color:var(--ink-2)}.faint{color:var(--ink-3)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.kicker{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:.5em;font-size:11.5px;font-weight:500;display:inline-flex}.kicker--roast,.kicker:hover,.kicker a:hover{color:var(--roast)}.badge{--bc:var(--ink-2);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--bc);border:1px solid var(--bc);align-items:center;gap:.45em;padding:3px 8px 3px 7px;font-size:10.5px;font-weight:600;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.badge{border:1px solid color-mix(in oklch,var(--bc) 38%,transparent)}}.badge{background:var(--bc);border-radius:3px}@supports (color:color-mix(in lab,red,red)){.badge{background:color-mix(in oklch,var(--bc) 9%,transparent)}}.badge{white-space:nowrap;line-height:1}.badge:before{content:"";background:var(--bc);border-radius:1.5px;flex:none;width:6px;height:6px;transform:rotate(45deg)}.badge--micro{--bc:var(--t-micro)}.badge--analisis{--bc:var(--t-analisis)}.badge--resena{--bc:var(--t-resena)}.badge--ensayo{--bc:var(--t-ensayo)}.badge--tutorial{--bc:var(--t-tutorial)}.badge--herram{--bc:var(--t-herram)}.badge--micro:before{border-radius:50%;transform:none}.badge--analisis:before{border-radius:1px;transform:rotate(45deg)}.badge--resena:before{clip-path:polygon(50% 0,61% 35%,100% 35%,69% 57%,80% 100%,50% 75%,20% 100%,31% 57%,0 35%,39% 35%);border-radius:0;transform:none}.badge--ensayo:before{border-radius:1px;width:4px;transform:none}.badge--tutorial:before{clip-path:polygon(0 0,100% 50%,0 100%);border-radius:1px;transform:none}.badge--herram:before{box-shadow:inset 0 0 0 1.5px var(--paper);border-radius:50%;transform:none}.badge--lg{padding:5px 11px;font-size:12px}.ph{background:repeating-linear-gradient(135deg,var(--line-2) 0,var(--line-2) 1px,transparent 1px,transparent 9px),var(--paper-2);color:var(--ink-3);place-items:center;display:grid;position:relative;overflow:hidden}.ph:after{content:attr(data-label);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);background:var(--paper);padding:4px 8px;font-size:11px}@supports (color:color-mix(in lab,red,red)){.ph:after{background:color-mix(in oklch,var(--paper) 70%,transparent)}}.ph:after{border-radius:3px}.ph--16x9{aspect-ratio:16/9}.ph--3x2{aspect-ratio:3/2}.ph--1x1{aspect-ratio:1}.ph--21x9{aspect-ratio:21/9}.ph img{object-fit:cover;width:100%;height:100%}.ring{border:1.5px solid var(--spark);vertical-align:-.12em;border-radius:50%;width:1em;height:1em;display:inline-block}.cm-header{background:var(--paper);border-bottom:1px solid var(--line)}.cm-utility{border-bottom:1px solid var(--line-2);font-family:var(--mono);letter-spacing:.06em;color:var(--ink-3);font-size:11px}.cm-utility .wrap{justify-content:flex-end;align-items:center;height:34px;display:flex}.cm-utility__right{align-items:center;gap:18px;display:flex}.cm-util-link{color:var(--ink-3);text-transform:uppercase;transition:color .2s}.cm-util-link:hover{color:var(--roast)}.theme-toggle{font:inherit;color:var(--ink-3);border:1px solid var(--line);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;font-family:var(--mono);background:0 0;border-radius:999px;align-items:center;gap:7px;padding:3px 10px 3px 9px;font-size:11px;transition:border-color .2s,color .2s;display:inline-flex}.theme-toggle:hover{color:var(--ink);border-color:var(--ink-3)}.theme-toggle__dot{background:var(--spark);border-radius:50%;width:9px;height:9px}.cm-masthead{padding:22px 0 18px}.cm-masthead .wrap{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.cm-wordmark{align-items:baseline;gap:.04em;line-height:1;display:inline-flex}.cm-wordmark__text{font-family:var(--sans);letter-spacing:-.03em;color:var(--ink);font-size:clamp(26px,4.4vw,40px);font-weight:800}.cm-wordmark__text b{color:var(--roast);font-weight:800}.cm-wordmark__ring{border:2px solid var(--spark);border-radius:50%;width:.42em;height:.42em;margin-left:.12em;display:inline-block;position:relative;top:-.02em}.cm-tagline{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-3);text-align:right;max-width:230px;font-size:11px;line-height:1.4}.cm-sectionnav{z-index:50;background:var(--paper);position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.cm-sectionnav{background:color-mix(in oklch,var(--paper) 88%,transparent)}}.cm-sectionnav{-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cm-sectionnav .wrap{scrollbar-width:none;align-items:center;gap:2px;height:46px;display:flex;overflow-x:auto}.cm-sectionnav .wrap::-webkit-scrollbar{display:none}.cm-sectionnav a{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-2);white-space:nowrap;border-radius:4px;padding:8px 11px;font-size:12px;transition:color .18s,background .18s;position:relative}.cm-sectionnav a:hover{color:var(--ink);background:var(--paper-2)}.cm-sectionnav a[aria-current=page]{color:var(--roast)}.cm-sectionnav a[aria-current=page]:after{content:"";background:var(--roast);border-radius:2px;height:2px;position:absolute;bottom:4px;left:11px;right:11px}.card{flex-direction:column;gap:11px;display:flex}.card a.card__title:hover{color:var(--roast)}.card__media{border-radius:var(--radius);display:block;overflow:hidden}.card__head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.card__title{font-family:var(--serif);letter-spacing:-.01em;font-size:21px;font-weight:600;line-height:1.16}.card__dek{color:var(--ink-2);font-size:15px;line-height:1.5}.card__meta{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.card__meta .dot{opacity:.6;background:currentColor;border-radius:50%;width:3px;height:3px}.card__meta .score{color:var(--roast);font-weight:600}.card--lead .card__title{letter-spacing:-.022em;font-size:clamp(34px,5vw,58px);line-height:1.02}.card--lead .card__dek{max-width:60ch;font-size:19px}.card--h{flex-direction:row;align-items:flex-start;gap:16px}.card--h .card__media{flex:none;width:150px}.card--h .card__title,.card--text .card__title{font-size:18px}.grid{gap:clamp(22px,3vw,36px);display:grid}.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.river{flex-direction:column;display:flex}.river__item{border-bottom:1px solid var(--line);grid-template-columns:78px 1fr;align-items:start;gap:16px;padding:16px 0;display:grid}.river__item:first-child{padding-top:0}.river__time{font-family:var(--mono);letter-spacing:.03em;color:var(--roast);padding-top:2px;font-size:11px}.river__title{font-family:var(--serif);font-size:18px;font-weight:600;line-height:1.2}.river__title:hover{color:var(--roast)}.river__row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.band{border-top:1px solid var(--line);padding:40px 0}.band--tint{background:var(--paper-2)}.band__head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:24px;display:flex}.band__title{font-family:var(--serif);align-items:center;gap:10px;font-size:26px;font-weight:600;display:flex}.band__title .ring{width:.7em;height:.7em}.band__more{font-family:var(--mono);color:var(--ink-2);letter-spacing:.03em;font-size:12px}.band__more:hover{color:var(--roast)}.ad-slot{background:repeating-linear-gradient(45deg,var(--line-2) 0,var(--line-2) 1px,transparent 1px,transparent 7px);border:1px dashed var(--ink-3);place-items:center;width:100%;max-width:100%;margin-inline:auto;display:grid;position:relative}@supports (color:color-mix(in lab,red,red)){.ad-slot{border:1px dashed color-mix(in oklch,var(--ink-3) 45%,transparent)}}.ad-slot{border-radius:var(--radius);color:var(--ink-3)}.ad-slot__tag{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);text-align:center;font-size:10px;line-height:1.6}.ad-slot__tag b{color:var(--ink-2);letter-spacing:.1em;font-weight:600;display:block}.ad-leaderboard{max-width:728px;height:90px}.ad-billboard{max-width:970px;height:250px}.ad-rect{max-width:300px;height:250px}.ad-rect-lg{max-width:336px;height:280px}.ad-inline{max-width:100%;height:120px}.ad-label{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);text-align:center;margin-bottom:6px;font-size:9.5px}.sticky-rail{position:sticky;top:64px}.cm-footer{border-top:1px solid var(--line);background:var(--paper-2);color:var(--ink);color-scheme:dark;--paper:oklch(20% .014 262);--paper-2:oklch(24.2% .016 262);--paper-3:oklch(28.5% .018 262);--crema:oklch(30% .03 258);--ink:oklch(95% .012 250);--ink-2:oklch(78% .016 252);--ink-3:oklch(62% .016 255);--line:oklch(95% .012 250/.16);--line-2:oklch(95% .012 250/.08);--roast:oklch(70% .165 262);--roast-deep:oklch(78% .15 262);--on-roast:oklch(18% .02 262);--spark:oklch(74% .14 64);margin-top:64px}.band+.cm-footer{margin-top:0}.cm-footer__top{grid-template-columns:1.6fr 1fr 1fr 1.4fr;gap:40px;padding:48px 0 40px;display:grid}.cm-footer h4{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px;font-size:11px;font-weight:600}.cm-footer ul{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.cm-footer a{color:var(--ink-2);font-size:14px;transition:color .18s}.cm-footer a:hover{color:var(--roast)}.cm-footer__brand .cm-wordmark__text{font-size:24px}.cm-footer__mission{color:var(--ink-2);max-width:34ch;margin:14px 0 0;font-size:14px;line-height:1.6}.cm-footer__heritage{color:var(--ink-3);max-width:40ch;margin-top:14px;font-size:12.5px;font-style:italic;line-height:1.6}.cm-news{gap:8px;margin-top:14px;display:flex}.cm-news input{min-width:0;font:inherit;background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:4px;flex:1;padding:9px 12px;font-size:14px}.cm-news input:focus{outline:2px solid var(--roast);outline-offset:-1px}.cm-news button{font-family:var(--mono);letter-spacing:.04em;background:var(--roast);color:var(--on-roast);cursor:pointer;text-transform:uppercase;border:0;border-radius:4px;padding:0 16px;font-size:12px}.cm-news button:hover{background:var(--roast-deep)}.cm-footer__bottom{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;display:flex}.cm-footer__legal{font-family:var(--mono);color:var(--ink-3);letter-spacing:.03em;font-size:11px}.cm-footer__legal a{color:var(--ink-3)}.cm-footer__legal a:hover{color:var(--roast)}.article{padding:40px 0 20px}.article__header{max-width:var(--measure);margin-bottom:28px;margin-inline:auto}.article__kicker{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.article__title{letter-spacing:-.02em;margin-bottom:18px;font-size:clamp(32px,5vw,52px);line-height:1.04}.article--micro .article__title{font-size:clamp(28px,4vw,40px)}.article__dek{font-family:var(--serif);color:var(--ink-2);max-width:60ch;font-size:clamp(19px,2.4vw,23px);font-style:italic;font-weight:400;line-height:1.45}.article__byline{font-family:var(--mono);color:var(--ink-3);letter-spacing:.03em;flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px;font-size:12px;display:flex}.article__byline b{color:var(--ink);font-weight:600}.byline-avatar{background:var(--spark-tint);width:34px;height:34px;font-family:var(--serif);color:var(--spark);border-radius:50%;place-items:center;font-size:15px;font-weight:600;display:grid}.article__hero{max-width:var(--maxw);margin:28px auto}.article__hero .ph{border-radius:var(--radius-lg)}.article__hero figcaption{font-family:var(--mono);color:var(--ink-3);letter-spacing:.02em;margin-top:8px;font-size:11px}.prose{font-family:var(--serif);color:var(--ink);max-width:var(--measure);margin-inline:auto;font-size:20px;line-height:1.72}.article--micro .prose{font-size:19px}.article--longform .prose>p:first-of-type:first-letter{font-family:var(--serif);float:left;color:var(--roast);padding:.04em .1em 0 0;font-size:3.4em;font-weight:600;line-height:.82}.prose>*+*{margin-top:1.35em}.prose p{margin:0}.prose a{color:var(--roast);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--roast);text-decoration-color:var(--roast)}@supports (color:color-mix(in lab,red,red)){.prose a{-webkit-text-decoration-color:color-mix(in oklch,var(--roast) 45%,transparent);text-decoration-color:color-mix(in oklch,var(--roast) 45%,transparent)}}.prose a:hover{-webkit-text-decoration-color:var(--roast);text-decoration-color:var(--roast)}.prose h2{letter-spacing:-.015em;margin-top:1.8em;font-size:30px}.prose h3{margin-top:1.5em;font-size:23px}.prose strong{font-weight:600}.prose em{font-style:italic}.prose ul,.prose ol{margin:1.35em 0;padding-left:1.3em}.prose li{margin:.5em 0}.prose blockquote{border-top:2px solid var(--roast);border-bottom:1px solid var(--line);letter-spacing:-.012em;margin:1.6em 0;padding:22px 0;font-size:27px;font-style:italic;font-weight:500;line-height:1.28}.prose img{border-radius:var(--radius-lg)}.prose code{font-family:var(--mono);background:var(--paper-2);border-radius:3px;padding:.12em .4em;font-size:.85em}.prose pre{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;font-size:14px;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose .lead-cap:first-letter{float:left;color:var(--roast);font-size:3.4em;font-weight:600;line-height:.82;font-family:var(--serif);padding:.04em .08em 0 0}.fuentes{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-lg);font-family:var(--sans);margin:2em 0;padding:20px 22px}.fuentes h4{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--roast);margin:0 0 12px;font-size:11px}.fuentes ol,.fuentes ul{color:var(--ink-2);margin:0;padding-left:1.2em;font-size:14px;line-height:1.5}.fuentes li{margin:.4em 0}.fuentes a{color:var(--ink);text-underline-offset:2px;text-decoration:underline}.fuentes .tier{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--roast);border:1px solid var(--roast);font-size:9px}@supports (color:color-mix(in lab,red,red)){.fuentes .tier{border:1px solid color-mix(in oklch,var(--roast) 40%,transparent)}}.fuentes .tier{border-radius:999px;margin-left:6px;padding:1px 6px}.sharebar{max-width:var(--measure);flex-wrap:wrap;align-items:center;gap:14px;margin-inline:auto;display:flex}.sharebar--top{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.sharebar--bottom{border-top:1px solid var(--line);margin-top:40px;padding-top:24px}.sharebar__label{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:11px}.sharebar__links{align-items:center;gap:8px;display:flex}.sharebar__btn{border:1px solid var(--line);width:36px;height:36px;color:var(--ink-2);cursor:pointer;background:0 0;border-radius:50%;place-items:center;transition:color .18s,border-color .18s,background .18s,transform .18s;display:grid}.sharebar__btn svg{width:16px;height:16px}.sharebar__btn:hover{color:var(--on-roast);background:var(--roast);border-color:var(--roast);transform:translateY(-2px)}.sharebar__copy.is-copied{color:var(--on-roast);background:var(--pro);border-color:var(--pro)}.verdict{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper-2);max-width:var(--measure);margin:0 auto 2em;overflow:hidden}.verdict__head{border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--roast-tint),transparent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;display:flex}.verdict__label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--roast);font-size:11px}.verdict__product{font-family:var(--serif);margin-top:4px;font-size:24px;font-weight:600;line-height:1.1}.verdict__score{align-items:center;gap:14px;display:flex}.verdict__num{font-family:var(--serif);letter-spacing:-.02em;font-size:48px;font-weight:600;line-height:1}.verdict__num span{color:var(--ink-3);font-size:22px}.pips{gap:5px;display:flex}.pip{border:1.5px solid var(--roast);border-radius:50%;width:13px;height:13px;position:relative}.pip--full{background:var(--roast)}.pip--half{background:linear-gradient(90deg,var(--roast) 50%,transparent 50%)}.pros-cons{grid-template-columns:1fr 1fr;display:grid}.pros-cons>div{padding:20px 24px}.pros-cons>div+div{border-left:1px solid var(--line)}.pc-title{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:7px;margin:0 0 12px;font-size:11px;display:flex}.pc-title--pro{color:var(--pro)}.pc-title--con{color:var(--con)}.pros-cons ul{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.pros-cons li{font-family:var(--sans);color:var(--ink);padding-left:20px;font-size:14.5px;line-height:1.45;position:relative}.pc-pro li:before{content:"+";color:var(--pro);font-weight:700;position:absolute;left:0}.pc-con li:before{content:"–";color:var(--con);font-weight:700;position:absolute;left:0}.verdict__foot{border-top:1px solid var(--line);font-family:var(--serif);color:var(--ink-2);padding:18px 24px;font-size:17px;line-height:1.5}.verdict__foot b{color:var(--ink)}.prose ol.steps,.steps{counter-reset:step;margin:1.5em 0;padding:0;list-style:none}.steps li{counter-increment:step;margin:1.4em 0;padding:0 0 0 52px;position:relative}.steps li:before{content:counter(step);background:var(--roast);width:34px;height:34px;color:var(--on-roast);font-family:var(--mono);border-radius:50%;place-items:center;font-size:15px;font-weight:600;display:grid;position:absolute;top:-2px;left:0}.crumb{font-family:var(--mono);letter-spacing:.05em;color:var(--ink-3);text-transform:uppercase;align-items:center;gap:8px;font-size:11px;display:flex}.crumb a:hover{color:var(--roast)}.tag-row{max-width:var(--measure);flex-wrap:wrap;gap:8px;margin-inline:auto;display:flex}.tag{font-family:var(--mono);color:var(--ink-2);border:1px solid var(--line);letter-spacing:.03em;border-radius:999px;padding:4px 11px;font-size:11px}.tag:hover{border-color:var(--roast);color:var(--roast)}.section-divider{align-items:center;gap:14px;margin:8px 0;display:flex}.section-divider:before,.section-divider:after{content:"";background:var(--line);flex:1;height:1px}.section-hero{border-bottom:1px solid var(--line);padding:40px 0 28px}.section-hero h1{letter-spacing:-.03em;align-items:center;gap:18px;font-size:clamp(40px,7vw,76px);display:flex}.section-hero p{color:var(--ink-2);max-width:56ch;font-size:18px;font-family:var(--serif);margin:14px 0 0;font-style:italic}.list-row{border-bottom:1px solid var(--line);grid-template-columns:200px 1fr auto;align-items:start;gap:24px;padding:22px 0;display:grid}.list-row .card__media{border-radius:var(--radius)}.list-row__title{font-family:var(--serif);letter-spacing:-.01em;font-size:23px;font-weight:600;line-height:1.14}.list-row__title:hover{color:var(--roast)}.list-row__dek{color:var(--ink-2);max-width:60ch;margin-top:7px;font-size:15px;line-height:1.5}.list-row__meta{font-family:var(--mono);color:var(--ink-3);text-align:right;white-space:nowrap;letter-spacing:.03em;font-size:11px}.pagefind-ui{--pagefind-ui-primary:var(--roast);--pagefind-ui-text:var(--ink);--pagefind-ui-background:var(--paper);--pagefind-ui-border:var(--line);--pagefind-ui-font:var(--sans);--pagefind-ui-border-radius:4px}@media(max-width:1000px){.cm-footer__top{grid-template-columns:1fr 1fr;gap:32px}}@media(max-width:860px){.grid-3,.grid-4{grid-template-columns:1fr 1fr}.pros-cons{grid-template-columns:1fr}.pros-cons>div+div{border-left:0;border-top:1px solid var(--line)}.list-row{grid-template-columns:130px 1fr}.list-row__meta{text-align:left;grid-column:2}}@media(max-width:600px){body{font-size:16px}.grid-2,.grid-3,.grid-4,.cm-footer__top{grid-template-columns:1fr}.cm-masthead .wrap{flex-direction:column;align-items:flex-start;gap:10px}.cm-tagline{text-align:left}.card--h .card__media{width:110px}.river__item{grid-template-columns:60px 1fr;gap:12px}.prose{font-size:18px}}.cm-progress{background:var(--roast);z-index:100;pointer-events:none;width:0;height:2px;box-shadow:0 0 14px var(--roast);position:fixed;top:0;left:0}@supports (color:color-mix(in lab,red,red)){.cm-progress{box-shadow:0 0 14px color-mix(in oklch,var(--roast) 65%,transparent)}}.cm-progress{transition:width 80ms linear}@media(prefers-reduced-motion:no-preference){.card__media .ph,.card__media img{transition:transform .65s cubic-bezier(.2,.7,.2,1)}.card:hover .card__media .ph,.card:hover .card__media img,.list-row:hover .card__media .ph,.list-row:hover .card__media img{transform:scale(1.045)}.card,.list-row{transition:transform .35s cubic-bezier(.2,.7,.2,1)}.card--h:hover{transform:translateY(-2px)}.cm-wordmark__ring{animation:1s cubic-bezier(.2,.7,.2,1) .15s both cm-ring-in}@keyframes cm-ring-in{0%{opacity:0;transform:scale(.15)}60%{opacity:1}to{opacity:1;transform:none}}html.js-reveal .cm-masthead,html.js-reveal .cm-sectionnav,html.js-reveal .grid>*,html.js-reveal .band__head,html.js-reveal .card--lead,html.js-reveal .list-row,html.js-reveal .river__item,html.js-reveal .section-hero,html.js-reveal .article__header{opacity:0;will-change:opacity,transform;transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1);transform:translateY(18px)}html.js-reveal .in,html.js-reveal .in>*{opacity:1!important;transform:none!important}html.js-reveal .grid>:nth-child(2),html.js-reveal .river__item:nth-child(2){transition-delay:60ms}html.js-reveal .grid>:nth-child(3),html.js-reveal .river__item:nth-child(3){transition-delay:.12s}html.js-reveal .grid>:nth-child(4),html.js-reveal .river__item:nth-child(4){transition-delay:.18s}html.js-reveal .river__item:nth-child(5){transition-delay:.24s}}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
