@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/zen-kaku-gothic-new-latin-400-normal-BEdayliK.woff2)format("woff2"),url(/assets/zen-kaku-gothic-new-latin-400-normal-CPSmNJAU.woff)format("woff")}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/zen-kaku-gothic-new-latin-500-normal-Dfjj7AIU.woff2)format("woff2"),url(/assets/zen-kaku-gothic-new-latin-500-normal-BIfs0Bhs.woff)format("woff")}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/zen-kaku-gothic-new-latin-700-normal-Dgv0FPyh.woff2)format("woff2"),url(/assets/zen-kaku-gothic-new-latin-700-normal-zPVyND5l.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ivory:#fafaf6;--paper:#fff;--charcoal:#202124;--ink-soft:#4a4b4f;--ink-muted:#66676b;--leaf:#f7e9ad;--leaf-wash:#fcf6dc;--gold-deep:#8a6500;--gold:#d8a739;--gold-hover:#c9952a;--rule:#e8e4d6;--rule-strong:#d6d0bc;--alert:#9b2c1f;--alert-wash:#fbece8;--font-display:"Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", Georgia, serif;--font-body:"Zen Kaku Gothic New", "Hiragino Sans", "Segoe UI", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--text-xs:.8125rem;--text-sm:.9375rem;--text-md:1.0625rem;--text-lg:1.3125rem;--text-xl:1.75rem;--text-2xl:clamp(2rem, 1.5rem + 1.6vw, 2.75rem);--text-display:clamp(2.5rem, 1.55rem + 3.3vw, 4.5rem);--text-metric:clamp(4rem, 2.4rem + 6vw, 7.75rem);--gutter:clamp(1rem, .4rem + 2.6vw, 3rem);--max:80rem;--radius:14px;--radius-sm:9px;--control:2.75rem;--shadow-soft:0 1px 1px #20212408, 0 10px 28px -12px #2021241f, 0 28px 56px -32px #8a650024;--shadow-lift:0 1px 1px #2021240a, 0 14px 34px -14px #2021242e, 0 32px 64px -34px #8a650033;--ease-out:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--ivory);color:var(--charcoal);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.6}h1,h2,h3,p,ol,ul,dl,dd,figure{margin:0}ol,ul{padding:0;list-style:none}button,input,select{font:inherit;color:inherit}a{color:inherit}img,svg{max-width:100%;display:block}:focus-visible{outline:3px solid var(--charcoal);outline-offset:3px;border-radius:4px}.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}.skip-link{left:var(--gutter);z-index:10;background:var(--charcoal);color:var(--ivory);border-radius:var(--radius-sm);padding:.6rem 1rem;position:absolute;top:-100px}.skip-link:focus{top:.75rem}.shell{width:100%;max-width:calc(var(--max) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.mono{font-family:var(--font-mono);letter-spacing:-.01em;font-size:.92em}.num{font-variant-numeric:tabular-nums lining-nums}.btn{min-height:var(--control);border-radius:var(--radius-sm);font-weight:500;font-size:var(--text-sm);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.55rem 1.1rem;line-height:1.2;text-decoration:none;transition:background-color .16s,border-color .16s,box-shadow .16s;display:inline-flex}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.55}.btn--primary{background:var(--gold);color:var(--charcoal);font-weight:700;box-shadow:inset 0 -2px #8a650047}.btn--primary:hover:not(:disabled){background:var(--gold-hover)}.btn--large{min-height:3.5rem;font-size:var(--text-md);width:100%;padding-inline:1.5rem}.btn--quiet{border-color:var(--rule-strong);color:var(--charcoal);background:0 0}.btn--quiet:hover:not(:disabled){border-color:var(--charcoal);background:var(--paper)}.btn--danger{border-color:color-mix(in srgb, var(--alert) 45%, transparent);color:var(--alert);background:0 0}.btn--danger:hover:not(:disabled){background:var(--alert-wash)}.btn--link{min-height:var(--control);color:var(--charcoal);text-decoration:underline;-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold);text-underline-offset:4px;background:0 0;border:0;padding-inline:.25rem;text-decoration-thickness:2px}.btn--link:hover{-webkit-text-decoration-color:var(--charcoal);text-decoration-color:var(--charcoal)}.card{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted)}.badge{font-size:var(--text-xs);background:var(--leaf-wash);color:var(--charcoal);border:1px solid var(--leaf);white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.15rem .55rem;font-weight:500;line-height:1.5;display:inline-flex}.badge--muted{border-color:var(--rule-strong);color:var(--ink-soft);background:0 0}.badge--alert{background:var(--alert-wash);border-color:color-mix(in srgb, var(--alert) 30%, transparent);color:var(--alert)}.notice{border-radius:var(--radius-sm);background:var(--leaf-wash);border:1px solid var(--leaf);font-size:var(--text-sm);align-items:flex-start;gap:.75rem;padding:.85rem 1rem;display:flex}.notice--alert{background:var(--alert-wash);border-color:color-mix(in srgb, var(--alert) 30%, transparent);color:var(--charcoal)}.notice strong{font-weight:700}.field{gap:.35rem;display:grid}.field label{font-size:var(--text-sm);font-weight:500}.field__hint{font-size:var(--text-xs);color:var(--ink-muted)}.input{min-height:var(--control);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);background:var(--paper);width:100%;padding:.5rem .8rem}.input:hover{border-color:var(--ink-muted)}.input:focus-visible{outline-offset:1px;border-color:var(--charcoal)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root[data-typography=system]{--apex-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--apex-mono:ui-monospace, "SFMono-Regular", Menlo, monospace;--font-body:var(--apex-sans);--font-display:var(--apex-sans);--font-mono:var(--apex-mono)}:root[data-typography=system] :where(.am-run,.am-results,.am-hof,.am-publish,.am-variant-chooser,.am-reviews,.am-review-composer,.am-review-viewer){--am-sans:var(--apex-sans);--am-mono:var(--apex-mono)}:root[data-typography=system] :is(.lab,.lab-google-subtitle,.apex-privacy,.apex-privacy button){font-family:var(--apex-sans)}:root[data-typography=system] :is(.lab-topline,.lab-overline,.lab-choose-link,.lab-detection,.lab-device dt,.lab th,.lab-footer>div>span,.lab-google small,.lab-archive-list button>span:last-child,.lab-editorial-kicker,.lab-methodology-cta,.lab-faq-number,.apex-thread-button-copy small,.apex-thread-button-reading,.apex-thread-button-stop,.apex-privacy-kicker){font-family:var(--apex-mono)}:root[data-typography=system] .lab-hero h1{letter-spacing:-.08em;font-weight:600}:root[data-typography=system] .lab h2{letter-spacing:-.04em;font-weight:550}.apex-privacy{z-index:1000;right:max(18px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));color:#eef2e8;background:linear-gradient(135deg,#1f2b1c 0%,#151b1b 72%);border:1px solid #5b714a;border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:11px 20px;width:min(560px,100vw - 36px);padding:20px;font-family:Zen Kaku Gothic New,sans-serif;animation:.34s cubic-bezier(.16,1,.3,1) both apex-privacy-enter;display:grid;position:fixed;box-shadow:0 20px 70px #000a}.apex-privacy[data-closing=true]{pointer-events:none;animation:.2s cubic-bezier(.4,0,1,1) both apex-privacy-exit}@keyframes apex-privacy-enter{0%{opacity:0;filter:blur(3px);transform:translateY(18px)scale(.985)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes apex-privacy-exit{0%{opacity:1;filter:blur();transform:translateY(0)scale(1)}to{opacity:0;filter:blur(2px);transform:translateY(10px)scale(.985)}}.apex-privacy-kicker{color:#c8f47c;letter-spacing:1px;white-space:nowrap;padding-top:5px;font:9px IBM Plex Mono,monospace}.apex-privacy-copy h2{letter-spacing:-.35px;margin:0;font-size:17px;font-weight:500}.apex-privacy-copy p{color:#b8c2b4;margin:7px 0 0;font-size:13px;line-height:1.55}.apex-privacy-actions{flex-wrap:wrap;grid-column:2;align-items:center;gap:9px;display:flex}.apex-privacy button{cursor:pointer;border-radius:4px;min-height:38px;padding:8px 13px;font:500 12px Zen Kaku Gothic New,sans-serif}.apex-privacy-accept{color:#162014;background:#c8f47c;border:1px solid #c8f47c}.apex-privacy-decline{color:#d9e2d4;background:0 0;border:1px solid #52604f}.apex-privacy-link{color:#c7e8a0;text-underline-offset:3px;grid-column:2;width:fit-content;font-size:12px;text-decoration:underline}.apex-privacy button:focus-visible,.apex-privacy-link:focus-visible{outline-offset:3px;outline:2px solid #c8f47c}@media (width<=620px){.apex-privacy{left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));grid-template-columns:1fr;gap:10px;width:auto;padding:18px}.apex-privacy-kicker,.apex-privacy-actions,.apex-privacy-link{grid-column:1}.apex-privacy-actions{align-items:stretch}.apex-privacy button{flex:190px}}@media (prefers-reduced-motion:reduce){.apex-privacy{animation:none}}.legal-page{--legal-bg:#101416;--legal-panel:#17201c;--legal-line:#354039;--legal-text:#f0f1e9;--legal-muted:#aab4aa;--legal-lime:#c8f47c;min-height:100vh;padding:0 max(20px, env(safe-area-inset-left), calc((100vw - 1370px) / 2));background:radial-gradient(ellipse at 68% -8%, #42562932, transparent 42%), var(--legal-bg);color:var(--legal-text);font-family:Zen Kaku Gothic New,sans-serif;line-height:1.55}.legal-page *{box-sizing:border-box}.legal-page a{color:inherit;text-underline-offset:4px}.legal-page :focus-visible{outline:2px solid var(--legal-lime);outline-offset:4px}.legal-header,.legal-footer{border-color:var(--legal-line);align-items:center;display:flex}.legal-header{border-bottom:1px solid var(--legal-line);justify-content:space-between;gap:20px;min-height:90px}.legal-brand{text-decoration:none}.legal-logo{letter-spacing:-1.2px;align-items:center;gap:9px;font-size:25px;font-weight:700;display:inline-flex}.legal-mark{clip-path:polygon(0 0,100% 0,100% 70%,70% 100%,0 100%);background:var(--legal-lime);color:#162014;place-items:center;width:30px;height:30px;font:900 23px Arial,sans-serif;display:grid}.legal-back{color:#c8d9b9;font-size:13px;text-decoration:none}.legal-back span{color:var(--legal-lime);margin-left:6px}.legal-content{width:min(100%,1120px);margin:0 auto;padding:85px 0 74px}.legal-intro{max-width:780px}.legal-overline{color:#bdd49c;letter-spacing:1.3px;margin:0 0 13px;font:10px IBM Plex Mono,monospace}.legal-intro h1{letter-spacing:-3px;max-width:760px;margin:0;font-size:clamp(42px,6vw,72px);font-weight:500;line-height:1.03}.legal-intro>p:not(.legal-overline):not(.legal-updated){max-width:670px;color:var(--legal-muted);margin:25px 0 0;font-size:17px;line-height:1.65}.legal-updated{color:#859180;letter-spacing:.6px;margin:28px 0 0;font:10px IBM Plex Mono,monospace}.legal-callout{background:linear-gradient(135deg,#202b1d,#161c1b);border:1px solid #506347;border-radius:8px;grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr);gap:42px;margin:72px 0 57px;padding:30px;display:grid}.legal-callout h2,.legal-grid h2,.legal-final h2{letter-spacing:-1px;margin:0;font-weight:500}.legal-callout h2{font-size:28px}.legal-callout dl{grid-template-columns:1fr 1fr;gap:20px 28px;margin:0;display:grid}.legal-callout dt{color:#879485;letter-spacing:.7px;text-transform:uppercase;margin:0 0 4px;font:9px IBM Plex Mono,monospace}.legal-callout dd{color:#dbe6d6;margin:0;font-size:14px}.legal-grid{border-top:1px solid var(--legal-line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.legal-grid>section{border-bottom:1px solid var(--legal-line);padding:37px 38px 42px 0}.legal-grid>section:nth-child(2n){border-left:1px solid var(--legal-line);padding-left:38px;padding-right:0}.legal-grid h2{font-size:25px;line-height:1.15}.legal-grid p:not(.legal-overline),.legal-final>p:not(.legal-overline){color:var(--legal-muted);margin:17px 0 0;font-size:14px;line-height:1.7}.legal-grid a,.legal-final a{color:#d4edae}.legal-settings{color:#d8efb6;cursor:pointer;background:#27351f;border:1px solid #73924e;border-radius:4px;min-height:40px;margin-top:20px;padding:8px 13px;font:500 12px Zen Kaku Gothic New,sans-serif}.legal-final{max-width:760px;padding:70px 0 8px}.legal-final h2{font-size:clamp(29px,4vw,42px);line-height:1.12}.legal-footer{border-top:1px solid var(--legal-line);color:#95a193;gap:23px;min-height:88px;font-size:11px}.legal-footer .legal-logo{letter-spacing:-.8px;color:var(--legal-text);font-size:18px}.legal-footer .legal-mark{width:23px;height:23px;font-size:17px}.legal-footer a,.legal-footer button{color:#b9cdb0;font:inherit}.legal-footer a{margin-left:auto}.legal-footer button{cursor:pointer;background:0 0;border:0;padding:0}.legal-skip{background:var(--legal-lime);color:#15200e;z-index:2;padding:8px 12px;position:absolute;top:-60px;left:20px}.legal-skip:focus{top:8px}@media (width<=720px){.legal-page{padding-inline:max(18px, env(safe-area-inset-left))}.legal-header{min-height:76px}.legal-logo{font-size:22px}.legal-content{padding:55px 0 50px}.legal-intro h1{letter-spacing:-2px}.legal-callout{grid-template-columns:1fr;gap:28px;margin:52px 0 38px;padding:22px}.legal-callout dl{grid-template-columns:1fr;gap:16px}.legal-grid{grid-template-columns:1fr}.legal-grid>section,.legal-grid>section:nth-child(2n){border-left:0;padding:30px 0}.legal-footer{flex-wrap:wrap;gap:13px 18px;padding:20px 0}.legal-footer a{margin-left:0}}
