:root{--jh-font-display:var(--font-space-grotesk,"Space Grotesk", system-ui, sans-serif);--jh-font-body:var(--font-plex-sans,"IBM Plex Sans", system-ui, sans-serif);--jh-font-mono:var(--font-plex-mono,"IBM Plex Mono", ui-monospace, "SF Mono", monospace);--jh-theme-canvas:#fcfcfd;--jh-paper:#f4efe7;--jh-paper-soft:#fbf8f1;--jh-surface:#fffdf8;--jh-ink:#171a20;--jh-muted:#5c626b;--jh-faint:#686d75;--jh-line:#171a20;--jh-line-soft:#cfc7ba;--jh-coral:#e07850;--jh-coral-ink:#963b24;--jh-coral-soft:#f1c8b7;--jh-coral-wash:#f7e3da;--jh-cobalt:#3155d9;--jh-cobalt-soft:#dce5ff;--jh-cobalt-on-inverse:#e0e5f3;--jh-anchor:#111318;--jh-anchor-muted:#b3bac5;--jh-inverse-canvas:#0a0a0a;--jh-inverse-canvas-alt:#090b0f;--jh-inverse-surface:#141821;--jh-inverse-surface-soft:#ffffff0e;--jh-inverse-line:#262c38;--jh-inverse-line-translucent:#ffffff1f;--jh-inverse-line-soft:#ffffff13;--jh-inverse-grid-line:#ffffff0b;--jh-inverse-text:#f7f8fa;--jh-inverse-muted:#a5acb8;--jh-inverse-faint:#79828f;--jh-inverse-accent:var(--jh-coral);--jh-inverse-accent-strong:#ff6b35;--jh-inverse-link:#f7f8fa9e;--jh-page-gutter:24px;--jh-page-gutter-compact:18px;--jh-hero-top-space:96px;--jh-breadcrumb-height:44px;--jh-breadcrumb-gap:16px;--jh-breadcrumb-gap-compact:16px;--jh-hero-grid-mask:linear-gradient(180deg, #000 0%, transparent 78%);--jh-hero-grid-size:44px 44px;--jh-inverse-glow:radial-gradient(circle at 74% 0%, #e0785033, transparent 28%), radial-gradient(circle at 18% 20%, #ffffff12, transparent 24%);--jh-nav-canvas:var(--jh-paper-soft);--jh-nav-surface:var(--jh-surface);--jh-nav-ink:var(--jh-ink);--jh-nav-muted:var(--jh-muted);--jh-nav-line:var(--jh-line-soft);--jh-nav-active:var(--jh-coral-ink);--jh-nav-accent:var(--jh-coral);--jh-nav-wash:var(--jh-coral-wash);--jh-theme-surface:#fff;--jh-theme-subtle:#f4f5f7;--jh-theme-line:#e4e7eb;--jh-theme-line-strong:#d2d6dc;--jh-theme-faint:#898f99;--jh-theme-muted:#565c66;--jh-theme-text:#1a1d23;--jh-theme-strong:#0a0a0a;--jh-theme-accent-wash:#fff0e8;--jh-theme-accent-line:#f1b59b;--jh-theme-accent-base:#e07850;--jh-theme-accent:#e07850;--jh-theme-accent-hover:#c85f3b;--jh-theme-accent-strong:#c85f3b;--jh-theme-accent-ink:#9e3f24;--jh-status-warning:#c98a00;--jh-status-warning-wash:#fbf3dd;--jh-status-danger:#e5484d;--jh-status-danger-wash:#fceaea;--jh-status-success:#26734d;--jh-status-success-wash:#e8f4ed;--jh-radius-xs:3px;--jh-radius-sm:6px;--jh-radius-md:8px;--jh-radius-lg:12px;--jh-radius-xl:16px;--jh-radius-pill:999px;--jh-radius-surface:20px;--jh-radius-card:14px;--jh-radius-control:10px;--jh-radius-field:8px;--jh-shadow-sm:0 1px 2px #0b0d100f, 0 1px 1px #0b0d100a;--jh-focus-ring:3px solid var(--jh-coral-ink);--jh-shell-max:1228px;--jh-content-max:1180px;--jh-measure-max:720px;--jh-type-display:600 clamp(40px, 6vw, 76px)/1.02 var(--jh-font-display);--jh-type-h1:600 clamp(42px, 4vw, 52px)/1.06 var(--jh-font-display);--jh-type-h2:600 clamp(26px, 3vw, 36px)/1.12 var(--jh-font-display);--jh-type-h3:600 22px/1.25 var(--jh-font-display);--jh-type-h4:600 18px/1.3 var(--jh-font-display);--jh-type-body-lg:400 19px/1.65 var(--jh-font-body);--jh-type-body:400 16px/1.6 var(--jh-font-body);--jh-type-body-sm:400 14px/1.55 var(--jh-font-body);--jh-type-label:500 12px/1.3 var(--jh-font-mono)}@media (max-width:640px){:root{--jh-page-gutter:var(--jh-page-gutter-compact)}}[data-theme=dark]{--jh-theme-canvas:#0a0a0a;--jh-theme-surface:#141821;--jh-theme-subtle:#1a1f29;--jh-theme-line:#262c38;--jh-theme-line-strong:#333b49;--jh-theme-faint:#6b7280;--jh-theme-muted:#98a1ae;--jh-theme-text:#dde2e9;--jh-theme-strong:#f4f6f9;--jh-theme-accent-wash:#2c1711;--jh-theme-accent-line:#7a3d2b;--jh-theme-accent:#e07850;--jh-theme-accent-hover:#ff6b35;--jh-theme-accent-strong:#f0a830;--jh-theme-accent-ink:#ffe0d2;--jh-status-warning-wash:#2e2410;--jh-status-danger-wash:#2e1416;--jh-status-success:#70d69b;--jh-status-success-wash:#10291c;--jh-shadow-sm:0 1px 2px #00000080;--jh-focus-ring:3px solid var(--jh-inverse-accent-strong)}
*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-gutter:stable;-webkit-text-size-adjust:100%}body{font-family:var(--jh-font-body);color:var(--jh-ink);background:var(--jh-paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px;line-height:1.6}html:has(main[data-public-shell]) body{flex-direction:column;min-height:100dvh;display:flex}html:has(main[data-public-shell]) body>main[data-public-shell]{flex:1 0 auto}a{color:inherit;-webkit-tap-highlight-color:transparent;text-decoration:none}::selection{background:var(--jh-coral-wash);color:var(--jh-ink)}img,svg{max-width:100%;height:auto;display:block}button{font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,[role=dialog]:focus-visible{outline:var(--jh-focus-ring);outline-offset:3px}.skip-link{z-index:300;background:var(--jh-ink);color:var(--jh-paper);border-radius:var(--jh-radius-md);padding:10px 14px;font-size:14px;position:absolute;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:none}.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}.prose h2{color:var(--jh-ink);font:600 clamp(22px, 2vw, 26px)/1.2 var(--jh-font-display);letter-spacing:0;border-top:1px solid var(--jh-line-soft);align-items:center;gap:10px;margin:48px 0 16px;padding-top:24px;display:flex}.prose h2:not(#key-takeaways-title):before{background:var(--jh-coral);border-radius:var(--jh-radius-pill);box-shadow:0 0 0 5px var(--jh-coral-wash);content:"";flex:none;width:10px;height:10px}.prose h2#key-takeaways-title{border-top:0;margin:0 0 10px;padding-top:0}.prose h3{font:600 24px/1.28 var(--jh-font-display);color:var(--jh-ink);letter-spacing:0;margin:34px 0 12px}.prose p{font:var(--jh-type-body-lg);color:var(--jh-ink);margin:0 0 18px}.prose ul,.prose ol{font:var(--jh-type-body-lg);color:var(--jh-ink);margin:0 0 18px;padding-left:22px;line-height:1.7}.prose blockquote{border-left:3px solid var(--jh-coral);font:var(--jh-type-h4);font-family:var(--jh-font-display);color:var(--jh-ink);margin:28px 0;padding:4px 0 4px 22px;font-weight:500;line-height:1.4}.prose a{color:var(--jh-coral-ink);text-decoration:underline;-webkit-text-decoration-color:var(--jh-coral-soft);text-decoration-color:var(--jh-coral-soft);text-underline-offset:3px}.prose code{font-family:var(--jh-font-mono);background:var(--jh-paper-soft);border:1px solid var(--jh-line-soft);border-radius:var(--jh-radius-xs);padding:1px 6px;font-size:.9em}.prose pre{font-family:var(--jh-font-mono);background:var(--jh-paper-soft);color:var(--jh-ink);border:1px solid var(--jh-line-soft);border-radius:var(--jh-radius-md);margin:22px 0;padding:18px 20px;font-size:13.5px;line-height:1.6;overflow-x:auto}.prose pre code{color:inherit;background:0 0;border:none;padding:0}.prose img{border-radius:var(--jh-radius-card);border:1px solid var(--jh-line-soft);margin:22px 0}.prose-table-scroll{-webkit-overflow-scrolling:touch;width:100%;margin:30px 0;overflow-x:auto}.prose table{border:1px solid var(--jh-line);border-collapse:separate;border-spacing:0;background:var(--jh-surface);width:100%;color:var(--jh-ink);font:var(--jh-type-body);margin:0;line-height:1.55}.prose thead{background:#101114}.prose th,.prose td{border-bottom:1px solid var(--jh-line-soft);border-right:1px solid var(--jh-line-soft);text-align:left;vertical-align:top;min-width:150px;padding:14px 16px}.prose th{border-bottom-color:var(--jh-line);color:var(--jh-coral);font:600 11.5px/1.45 var(--jh-font-mono);letter-spacing:.1em;text-transform:uppercase;background:#101114}.prose th:last-child,.prose td:last-child{border-right:0}.prose tbody tr:last-child td{border-bottom:0}.prose td:first-child{color:var(--jh-ink)}.prose-video{aspect-ratio:16/9;border:1px solid var(--jh-line-soft);border-radius:var(--jh-radius-md);background:var(--jh-paper-soft);width:100%;margin:30px 0;position:relative;overflow:hidden}.prose-video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}.cards-grid-3{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (max-width:900px){.cards-grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.cards-grid-3{grid-template-columns:1fr}}@media (max-width:540px){:root{--jh-shell-max:100%}}.share-btn{background:var(--jh-surface);border:1px solid var(--jh-line-soft);border-radius:var(--jh-radius-control);color:var(--jh-muted);justify-content:center;align-items:center;width:40px;height:40px;transition:color .14s,background .14s,border-color .14s;display:inline-flex}.share-btn:hover{background:var(--jh-coral-wash);border-color:var(--jh-coral);color:var(--jh-coral-ink)}.share-btn svg{width:18px;height:18px}.jh-btn{border-radius:var(--jh-radius-control);cursor:pointer;font-family:var(--jh-font-body);white-space:nowrap;border:1px solid #0000;align-items:center;gap:8px;font-weight:500;text-decoration:none;transition:background-color .14s,border-color .14s,box-shadow .14s,color .14s;display:inline-flex}.jh-btn:disabled,.btn[aria-disabled=true]{opacity:.5;pointer-events:none}.jh-btn:focus-visible{outline:3px solid var(--jh-cobalt);outline-offset:2px}@media (prefers-reduced-motion:reduce){.jh-btn{transition:none}}.jh-btn-sm{padding:8px 15px;font-size:14px}.jh-btn-md{padding:12px 22px;font-size:15px}.jh-btn-primary{background:var(--jh-coral);color:var(--jh-ink)}.jh-btn-primary:hover{background:var(--jh-coral-soft)}.jh-btn-accent{background:var(--jh-coral);border-color:var(--jh-coral-ink);color:var(--jh-ink);box-shadow:0 10px 28px #e0785033}.jh-btn-accent:hover{background:var(--jh-coral-soft);box-shadow:0 16px 36px #e0785047}.jh-btn-ghost{background:var(--jh-surface);border-color:var(--jh-line);color:var(--jh-ink)}.jh-btn-ghost:hover{background:var(--jh-paper-soft)}.jh-btn-text{color:var(--jh-ink);text-decoration:underline;-webkit-text-decoration-color:var(--jh-coral-soft);text-decoration-color:var(--jh-coral-soft);text-underline-offset:4px;background:0 0}.jh-btn-text:hover{-webkit-text-decoration-color:var(--jh-coral-ink);text-decoration-color:var(--jh-coral-ink)}.jh-btn-text.jh-btn-sm{padding:8px 4px}.jh-btn-text.jh-btn-md{padding:12px 4px}
