:root{--sp-ink:#16181d;--sp-ink-soft:#3d4149;--sp-ink-faint:#6b7078;--sp-paper:#fbfbf9;--sp-paper-raise:#ffffff;--sp-line:#e6e4de;--sp-line-strong:#c9c6bd;--sp-stage:#0a0e1a;--sp-stage-2:#101728;--sp-stage-line:rgba(255,255,255,0.08);--sp-stage-text:#eef1f8;--sp-stage-dim:#9aa3b8;--sp-accent:#1d4ed8;--sp-accent-2:#22d3ee;--sp-accent-ink:#16307a;--sp-accent-wash:#eef3fe;--sp-grad:linear-gradient(120deg,#1d4ed8,#22d3ee);--sp-font:var(--font-sans);--sp-step--1:clamp(0.85rem,0.83rem + 0.15vw,0.95rem);--sp-step-0:clamp(1rem,0.96rem + 0.2vw,1.1rem);--sp-step-1:clamp(1.25rem,1.17rem + 0.4vw,1.45rem);--sp-step-2:clamp(1.55rem,1.4rem + 0.8vw,1.95rem);--sp-step-3:clamp(2.1rem,1.7rem + 2vw,3rem);--sp-step-4:clamp(2.6rem,1.9rem + 3.6vw,4.6rem);--sp-gap:1.25rem;--sp-measure:42rem;--sp-wide:72rem;--sp-ease:cubic-bezier(0.22,1,0.36,1)}*{box-sizing:border-box}.sp-shell{max-width:var(--sp-wide);margin-inline:auto;padding-inline:clamp(1rem,4vw,2.5rem)}.sp-shell--wide{max-width:84rem}.sp-skip{position:absolute;left:-999px;top:0;background:var(--sp-accent);color:#fff;padding:.5rem 1rem;z-index:100}.sp-skip:focus{left:0}.sp-masthead{position:sticky;top:0;z-index:50;background:rgba(10,14,26,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--sp-stage-line)}.sp-masthead__inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:3.75rem}.sp-masthead__wordmark{font-weight:700;font-size:var(--sp-step-1);letter-spacing:-.02em;color:var(--sp-stage-text);text-decoration:none;display:inline-flex;align-items:baseline;gap:.3rem}.sp-masthead__wordmark em{font-style:normal;background:var(--sp-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.sp-masthead__tag{font-size:var(--sp-step--1);color:var(--sp-stage-dim);border-left:1px solid var(--sp-stage-line);padding-left:.9rem;display:none}@media (min-width:640px){.sp-masthead__tag{display:inline}}.sp-masthead nav{display:flex;gap:1.4rem;align-items:center}.sp-masthead nav a{color:var(--sp-stage-dim);text-decoration:none;font-size:var(--sp-step--1);font-weight:500;padding-block:.3rem;border-bottom:2px solid transparent;transition:color .18s var(--sp-ease),border-color .18s var(--sp-ease)}.sp-masthead nav a:hover{color:#fff}.sp-masthead nav a[aria-current=page]{color:#fff;border-bottom-color:transparent;background:var(--sp-grad);-webkit-background-clip:text;background-clip:text}.sp-hero{position:relative;background:radial-gradient(60rem 30rem at 15% -10%,rgba(29,78,216,.35),transparent 60%),radial-gradient(50rem 26rem at 90% 110%,rgba(34,211,238,.18),transparent 55%),var(--sp-stage);color:var(--sp-stage-text);overflow:hidden}.sp-hero__grid{display:grid;gap:3rem;padding-block:clamp(3.5rem,9vw,7rem);align-items:center}@media (min-width:1024px){.sp-hero__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}.sp-hero__kicker{display:inline-flex;align-items:center;gap:.6rem;font-size:var(--sp-step--1);text-transform:uppercase;letter-spacing:.18em;font-weight:600;color:#cfe0ff;background:rgba(29,78,216,.22);border:1px solid rgba(34,211,238,.35);border-radius:999px;padding:.45rem 1.1rem;margin:0 0 1.6rem}.sp-hero__kicker:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--sp-grad);box-shadow:0 0 12px rgba(34,211,238,.9)}.sp-hero__title{font-size:var(--sp-step-4);line-height:1.02;letter-spacing:-.035em;font-weight:700;margin:0 0 1.5rem}.sp-hero__title em{font-style:normal;background:var(--sp-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.sp-hero__lede{font-size:var(--sp-step-1);line-height:1.55;color:var(--sp-stage-dim);margin:0 0 2.2rem;max-width:34rem}.sp-hero__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2.8rem}.sp-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.7rem;border-radius:.5rem;font-weight:600;font-size:var(--sp-step-0);text-decoration:none;transition:transform .18s var(--sp-ease),box-shadow .18s var(--sp-ease),background .18s var(--sp-ease)}.sp-btn--primary{background:var(--sp-grad);color:#fff;box-shadow:0 8px 24px rgba(29,78,216,.45)}.sp-btn--primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(34,211,238,.4)}.sp-btn--ghost{color:var(--sp-stage-text);border:1px solid var(--sp-stage-line);background:rgba(255,255,255,.04)}.sp-btn--ghost:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}.sp-hero__meta{display:flex;flex-wrap:wrap;gap:2.5rem;border-top:1px solid var(--sp-stage-line);padding-top:1.6rem}.sp-hero__meta div strong{display:block;font-size:var(--sp-step-2);font-weight:700;background:var(--sp-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.sp-hero__meta div span{font-size:var(--sp-step--1);color:var(--sp-stage-dim)}.sp-hero__figure{position:relative;border-radius:1rem;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 80px rgba(0,0,0,.55);transform:rotate(1.2deg)}.sp-hero__figure img{display:block;width:100%;height:auto}.sp-hero__figure:after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(34,211,238,.14),transparent 45%);pointer-events:none}.sp-index{padding-block:clamp(2.5rem,6vw,4rem) 4rem}.sp-index__head{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--sp-ink);padding-bottom:.6rem;margin-bottom:1.8rem}.sp-index__head h2{margin:0;font-size:var(--sp-step-2);letter-spacing:-.02em}.sp-index__head a{font-size:var(--sp-step--1);color:var(--sp-accent);text-decoration:none;font-weight:600}.sp-index__head a:hover{text-decoration:underline}.sp-featured{display:grid;gap:1.5rem;margin-bottom:2rem;border-radius:1rem;overflow:hidden;background:var(--sp-paper-raise);border:1px solid var(--sp-line);box-shadow:0 4px 24px rgba(22,24,29,.06);transition:transform .22s var(--sp-ease),box-shadow .22s var(--sp-ease)}.sp-featured:hover{transform:translateY(-3px);box-shadow:0 16px 48px rgba(22,24,29,.12)}@media (min-width:900px){.sp-featured{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}}.sp-featured__media{position:relative;min-height:220px;background:var(--sp-stage)}.sp-featured__media img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0}.sp-featured__body{padding:clamp(1.4rem,3vw,2.2rem)}.sp-featured__badge{display:inline-block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#fff;background:var(--sp-grad);border-radius:999px;padding:.3rem .9rem;margin-bottom:1rem}.sp-featured__body h3{margin:0 0 .7rem;font-size:var(--sp-step-2);line-height:1.2;letter-spacing:-.02em}.sp-featured__body h3 a{color:var(--sp-ink);text-decoration:none}.sp-featured__body h3 a:hover{color:var(--sp-accent)}.sp-featured__body p{margin:0;color:var(--sp-ink-soft);line-height:1.6}.sp-featured__stamp{margin-top:1.2rem;font-size:var(--sp-step--1);color:var(--sp-ink-faint)}.sp-entry{display:grid;grid-template-columns:minmax(0,1fr);gap:.35rem;padding-block:1.5rem;border-bottom:1px solid var(--sp-line)}@media (min-width:640px){.sp-entry{grid-template-columns:11rem minmax(0,1fr);gap:.6rem 2rem}}.sp-entry__stamp{font-size:var(--sp-step--1);color:var(--sp-ink-faint);line-height:1.45;padding-top:.3rem}.sp-entry h3{margin:0;font-size:var(--sp-step-1);line-height:1.25;letter-spacing:-.015em}.sp-entry h3 a{color:var(--sp-ink);text-decoration:none}.sp-entry h3 a:hover{color:var(--sp-accent)}.sp-entry p{margin:.4rem 0 0;color:var(--sp-ink-soft);font-size:var(--sp-step-0);line-height:1.55;max-width:62ch}.sp-entry__note{font-size:var(--sp-step--1);color:var(--sp-accent-ink);background:var(--sp-accent-wash);align-self:start;padding:.15rem .6rem;border-radius:999px;justify-self:start;margin-top:.5rem}.sp-article{padding-block:clamp(2.5rem,6vw,4rem) 4rem}.sp-article__banner{position:relative;border-radius:1rem;overflow:hidden;max-width:var(--sp-measure);margin:0 0 2rem;border:1px solid var(--sp-line)}.sp-article__banner img{display:block;width:100%;height:auto}.sp-article__grid{display:grid;gap:3rem}@media (min-width:1024px){.sp-article__grid{grid-template-columns:minmax(0,var(--sp-measure)) 16rem;justify-content:center}}.sp-article__kicker{display:inline-flex;font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;color:var(--sp-accent);font-weight:700;margin:0 0 .8rem;gap:.5rem}.sp-article__kicker:before{content:"";width:1.6rem;height:2px;background:var(--sp-grad);align-self:center}.sp-article h1{font-size:var(--sp-step-3);line-height:1.08;letter-spacing:-.03em;margin:0 0 1rem;color:var(--sp-ink)}.sp-article__byline{display:flex;gap:1rem;align-items:center;font-size:var(--sp-step--1);color:var(--sp-ink-faint);border-bottom:1px solid var(--sp-line);padding-bottom:1.25rem;margin-bottom:2rem}.sp-article__byline b{color:var(--sp-ink);font-weight:600}.sp-prose{font-size:var(--sp-step-0);line-height:1.75;color:var(--sp-ink-soft)}.sp-prose>*+*{margin-top:1.15em}.sp-prose h2{font-size:var(--sp-step-2);line-height:1.2;letter-spacing:-.02em;color:var(--sp-ink);margin-top:2.3em;padding-left:.9rem;border-left:3px solid var(--sp-accent)}.sp-prose h3{font-size:var(--sp-step-1);letter-spacing:-.01em;color:var(--sp-ink);margin-top:1.8em}.sp-prose a{color:var(--sp-accent);text-decoration:underline;text-decoration-color:rgba(29,78,216,.35);text-underline-offset:3px}.sp-prose a:hover{text-decoration-color:var(--sp-accent)}.sp-prose ol,.sp-prose ul{padding-left:1.4rem}.sp-prose li+li{margin-top:.45em}.sp-prose blockquote{border-left:3px solid var(--sp-accent);padding:.2rem 0 .2rem 1.2rem;color:var(--sp-ink);font-style:italic}.sp-prose code{font-family:ui-monospace,monospace;font-size:.9em;background:var(--sp-accent-wash);padding:.1em .35em;border-radius:4px}.sp-prose img{width:100%;border-radius:8px}.sp-prose hr{border:0;border-top:1px solid var(--sp-line);margin-block:2.5em}.sp-rail{display:none}@media (min-width:1024px){.sp-rail{display:block;position:sticky;top:5rem;align-self:start;max-height:calc(100vh - 7rem);overflow:auto}}.sp-rail__title{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--sp-ink-faint);margin:0 0 .7rem;font-weight:600}.sp-rail__nav{margin-bottom:2rem}.sp-rail ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--sp-line)}.sp-rail li{margin:0}.sp-rail a{display:block;font-size:.85rem;line-height:1.35;color:var(--sp-ink-faint);text-decoration:none;padding:.3rem 0 .3rem .9rem;margin-left:-2px;border-left:2px solid transparent}.sp-rail a:hover{color:var(--sp-ink)}.sp-rail a.is-here{color:var(--sp-accent);border-left-color:var(--sp-accent)}.sp-colophon{background:radial-gradient(50rem 24rem at 85% -20%,rgba(29,78,216,.25),transparent 60%),var(--sp-stage);color:var(--sp-stage-dim);padding-block:3.5rem 2.5rem;margin-top:0;font-size:var(--sp-step--1)}.sp-colophon h4{margin:0 0 .7rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--sp-stage-text)}.sp-colophon__grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr))}.sp-colophon ul{list-style:none;margin:0;padding:0}.sp-colophon li{margin-bottom:.45rem}.sp-colophon a{color:var(--sp-stage-dim);text-decoration:none}.sp-colophon a:hover{color:#fff}.sp-colophon__legal{margin-top:2.4rem;padding-top:1.3rem;border-top:1px solid var(--sp-stage-line);display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:space-between}.sp-pagehead{padding-block:clamp(2.5rem,6vw,4rem) 1rem}.sp-pagehead h1{margin:0;font-size:var(--sp-step-3);letter-spacing:-.03em;color:var(--sp-ink)}.sp-pagehead p{margin:.8rem 0 0;color:var(--sp-ink-soft);font-size:var(--sp-step-1);max-width:55ch;line-height:1.5}.sp-prose a[href*="/go/amazon"]{display:flex;align-items:center;justify-content:center;gap:.6rem;width:fit-content;max-width:100%;margin:.85rem .15rem .4rem;padding:.9rem 1.9rem;border-radius:999px;background:linear-gradient(180deg,#ffb84d,#ff9900);color:#0f1111;font-weight:700;font-size:1rem;text-decoration:none;border:1px solid #e88b00;box-shadow:0 4px 0 #cc7f00,0 10px 22px rgba(255,153,0,.38);transition:transform .15s var(--sp-ease),box-shadow .15s var(--sp-ease),filter .15s var(--sp-ease)}.sp-prose a[href*="/go/amazon"]:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 6px 0 #cc7f00,0 14px 28px rgba(255,153,0,.5);color:#0f1111;text-decoration:none}.sp-prose a[href*="/go/amazon"]:active{transform:translateY(1px);box-shadow:0 2px 0 #cc7f00}.sp-prose a[href*="/go/amazon"]:after{content:"→";font-weight:800}.sp-prose li>a[href*="/go/amazon"]{display:flex;margin-top:.6rem}