.shell-w{width:100%;max-width:1120px;margin:0 auto;padding-left:24px;padding-right:24px}@media (max-width:560px){.shell-w{padding-left:16px;padding-right:16px}.s3 footer .fcopy{flex-basis:100%}}.s3 :where(h1,h2,h3,h4,h5,h6){font-size:revert;font-weight:revert;margin:revert;text-wrap:wrap}.s3 :where(p,blockquote,figure,hr,pre,dl,dd){margin:revert}.s3 :where(ul,ol){list-style:revert;margin:revert;padding:revert}.s3 :where(img,svg,video,canvas){display:revert;vertical-align:revert}.s3 :where(img,video){max-width:none}.s3 :where(b,strong){font-weight:700}html:has(main.s3),html:has(main.s3) body{background:#f6f2ea;color-scheme:light}.s3{--paper:#f6f2ea;--card:#fffcf6;--ink:#1e1915;--ink2:#54473c;--ink3:#8c7c6c;--line:#d8ccb9;--line2:#c1b29c;--wash:#f0eadf;--accent:#b8411b;--accent-fill:#e2562a;--accent-wash:#fcf2eb;--on-accent:#fffaf0;--hw:500;--br:999px;--font:"Geist",system-ui,sans-serif;--mono:"Geist Mono",ui-monospace,monospace;color-scheme:light;--grid:rgb(90 70 50/.12);--rule:rgb(90 70 50/.18);--past:rgb(84 71 60/.3);--past-h:rgb(84 71 60/.55);--qgrid:linear-gradient(90deg,transparent calc(25% - 1px),var(--grid) 0 25%,transparent 0 calc(50% - 1px),var(--grid) 0 50%,transparent 0 calc(75% - 1px),var(--grid) 0 75%,transparent 0 calc(100% - 1px),var(--grid) 0)}.s3,.s3 *{box-sizing:border-box}.s3{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.5 var(--font);-webkit-font-smoothing:antialiased}.s3 a{color:inherit;text-decoration:none}.s3 .w{max-width:1120px;margin:0 auto;padding:0 24px}.s3 .mono{font-family:var(--mono)}.s3 footer{border-top:1px solid var(--line);padding:28px 0 40px;font-size:14px;color:var(--ink2)}.s3 .btn{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 20px;border-radius:var(--br);font-weight:600;font-size:15px;border:0;cursor:pointer;font-family:inherit}.s3 .btn.dark{background:var(--ink);color:#fff}.s3 .btn.or{background:var(--cta,var(--accent));color:var(--on-accent)}.s3 .btn.ghost{border:1px solid var(--line2);background:transparent;color:var(--ink)}.s3 .ctas{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.s3 .hero{padding-top:88px;padding-bottom:8px;text-align:center}.s3 .hero .sub{margin-left:auto;margin-right:auto}.s3 .hero .ctas{justify-content:center}.s3 h1{font-weight:var(--hw);font-size:clamp(44px,7vw,84px);line-height:1;letter-spacing:-.035em;margin:0}.s3 .sub{font-size:20px;color:var(--ink2);max-width:600px;margin:22px 0 32px}.s3 .stack{padding-top:56px;padding-bottom:24px}.s3 .stack svg{width:100%;height:auto;display:block}.s3 .stack .v{display:none}.s3 .cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-top:40px;padding-bottom:96px}.s3 .card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:12px;transition:border-color .2s}.s3 .card:hover{border-color:var(--ink3)}.s3 .eye{font:500 12px var(--mono);letter-spacing:.08em;color:var(--ink2);text-transform:uppercase}.s3 .card h2{font-size:24px;line-height:1.15;letter-spacing:-.02em;font-weight:var(--hw);margin:0}.s3 .card p{margin:0;color:var(--ink2);font-size:16px}.s3 .proof{border-top:1px solid var(--line);padding-top:14px;margin-top:auto;font-size:15px}.s3 .proof b{color:var(--accent);font-weight:600}.s3 .more{font-weight:600;font-size:15px}.s3 .more:after{content:" \2192"}.s3 .logos{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:36px 0}.s3 .logos ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:28px 48px}.s3 .logos img{height:calc(22px * var(--h,1));width:auto;filter:grayscale(1);opacity:.6}.s3 .end{text-align:center;padding-top:120px;padding-bottom:120px}.s3 .end h2{font-size:clamp(36px,5vw,56px);letter-spacing:-.03em;font-weight:var(--hw);margin:0 0 12px;line-height:1.05}.s3 .end p{color:var(--ink2);margin:0 0 28px}.s3 .crumbs{font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);margin-bottom:22px}.s3 .crumbs a{color:var(--ink3)}.s3 .crumbs a:after{content:" / ";color:var(--ink3)}.s3 .phero{padding-top:72px;padding-bottom:56px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}.s3 .phero h1{font-size:clamp(40px,5.4vw,64px);line-height:1.02}.s3 .phero .sub{margin:20px 0 28px}.s3 .sec{padding-top:96px;padding-bottom:96px;border-top:1px solid var(--line)}.s3 .sec h2{font-size:clamp(30px,4vw,44px);line-height:1.08;letter-spacing:-.03em;font-weight:var(--hw);margin:0 0 14px}.s3 .lead{font-size:19px;color:var(--ink2);max-width:640px;margin:0 0 40px}.s3 .lead b{color:var(--ink);font-weight:600}.s3 .note{font-size:13px;color:var(--ink3);margin-top:18px;max-width:720px}.s3 .note a{color:var(--ink2);text-decoration:underline;text-underline-offset:3px}.s3 .fig svg{width:100%;height:auto;display:block}.s3 .fig .v{display:none}.s3 .code{background:var(--card);color:var(--ink);border:1.5px solid var(--ink);border-radius:12px;box-shadow:5px 5px 0 -1.5px var(--wash),5px 5px 0 0 var(--ink);padding:20px 22px;font:400 14px/1.7 var(--mono);overflow-x:auto;white-space:pre;position:relative;margin-right:5px}.s3 .code .c{color:var(--ink3)}.s3 .code .s{color:var(--accent)}.s3 .code .del{color:var(--ink3);text-decoration:line-through;text-decoration-color:var(--ink3)}.s3 .code .add{color:var(--ink)}.s3 .code .add:before{content:"+ ";color:var(--accent)}.s3 .code .del:before{content:"- ";color:var(--ink3);text-decoration:none;display:inline-block}.s3 .code .k{color:var(--accent)}.s3 .bars{--nw:150px;--vw:64px;--g:16px;position:relative;display:flex;flex-direction:column;gap:12px;max-width:820px;font-variant-numeric:tabular-nums}.s3 .bars:before{content:"";position:absolute;top:-6px;bottom:-6px;left:calc(var(--nw) + var(--g));right:calc(var(--vw) + var(--g));background:var(--qgrid);pointer-events:none}.s3 .bar{position:relative;display:grid;grid-template-columns:var(--nw) minmax(0,1fr) var(--vw);align-items:center;gap:var(--g);font-size:15px}.s3 .bar i{display:block;height:20px;min-width:2px;border-radius:0 3px 3px 0;background:linear-gradient(var(--past),var(--past)) var(--paper);width:calc(var(--v) * 1%)}.s3 .bar b{font-weight:500;color:var(--ink2);text-align:right}.s3 .bar.us b,.s3 .bar.us span{color:var(--ink);font-weight:600}.s3 .bar.us i{background:var(--accent)}.s3 .bar:not(.us):hover i{background:linear-gradient(var(--past-h),var(--past-h)) var(--paper)}.s3 .bar span{color:var(--ink2)}.s3 .stats{display:flex;gap:64px;flex-wrap:wrap}.s3 .stat b{display:block;font-size:clamp(48px,7vw,80px);font-weight:600;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}.s3 .stat b em{font-style:normal;color:var(--accent)}.s3 .stat span{display:block;color:var(--ink2);margin-top:10px;font-size:16px}.s3 .tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.s3 .tiles.t3{grid-template-columns:repeat(3,minmax(0,1fr))}.s3 .tile{border:1px solid var(--line);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:14px}.s3 .tile svg{width:100%;height:auto;display:block}.s3 .tile p{margin:0;font-weight:600;font-size:16px;line-height:1.3}.s3 .tile p span{display:block;font-weight:400;color:var(--ink2);font-size:14px;margin-top:4px}.s3 table.t{border-collapse:collapse;width:100%;max-width:820px;font-size:15px;font-variant-numeric:tabular-nums}.s3 table.t th{font:500 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);text-align:right;padding:0 0 12px;border-bottom:1px solid var(--ink)}.s3 table.t td:first-child,.s3 table.t th:first-child{text-align:left}.s3 table.t td{padding:14px 0;border-bottom:1px solid var(--line);text-align:right}.s3 table.t tr.us td{font-weight:700}.s3 table.t tr.us td b{color:var(--accent)}.s3 .faq{max-width:820px}.s3 .faq details{border-bottom:1px solid var(--line)}.s3 .faq summary{list-style:none;cursor:pointer;padding:22px 40px 22px 0;font-weight:600;font-size:18px;position:relative}.s3 .faq summary::-webkit-details-marker{display:none}.s3 .faq summary:after{content:"+";position:absolute;right:4px;top:18px;font:400 24px var(--mono);color:var(--ink2)}.s3 .faq details[open] summary:after{content:"\2212"}.s3 .faq details p{margin:0 0 22px;color:var(--ink2);max-width:700px}.s3 .see{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:15px;color:var(--ink2);margin-top:28px}.s3 .see a{color:var(--ink);font-weight:600}.s3 .see a:after{content:" \2192"}.s3 .flow{stroke:var(--accent);stroke-width:2;stroke-dasharray:2 7;stroke-linecap:round;fill:none;animation:s3-flow 1.6s linear infinite}@keyframes s3-flow{to{stroke-dashoffset:-18}}.s3 .blink{animation:s3-blink 1.4s step-end infinite}@keyframes s3-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.s3 .blink,.s3 .flow{animation:none}}.s3 .s3-off,.s3 .s3-off *{animation-play-state:paused!important}@media (max-width:860px){.s3 .links a.hide{display:none}.s3 .cards{grid-template-columns:minmax(0,1fr)}.s3 .fig .h,.s3 .stack .h{display:none}.s3 .fig .v,.s3 .stack .v{display:block;max-width:420px;margin:0 auto}.s3 .phero{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:48px}.s3 .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.s3 .tiles.t3{grid-template-columns:minmax(0,1fr)}.s3 .sec{padding-top:64px;padding-bottom:64px}}@media (max-width:560px){.s3 .w{padding-left:16px;padding-right:16px}.s3 .links{gap:16px}.s3 .links a:not(.btn){display:none}.s3 .hero{padding-top:56px;padding-bottom:24px}.s3 .sub{font-size:18px}.s3 .bars{--nw:96px;--vw:52px;--g:10px}.s3 .bar{font-size:13px}.s3 .bar i{height:16px}.s3 .stats{gap:32px}.s3 .tiles{grid-template-columns:minmax(0,1fr)}.s3 .code{font-size:12px;padding:16px}.s3 .lead{font-size:17px}}.s3 .gh{font:500 14px var(--mono);color:var(--ink2);margin-left:8px}.s3 .gh span{color:var(--accent)}.s3 .gh:hover{color:var(--ink)}.s3 .by{font-size:14px;color:var(--ink2);margin:16px 0 0}.s3 .by a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px}.s3 .custom{margin:24px 0 0;font-size:17px;font-weight:500}.s3 .custom a{color:var(--accent);font-weight:600}.s3 .custom a:after{content:" \2192"}.s3 .card .more{margin-top:2px}.s3 .who{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;align-items:center;font-size:15px;line-height:1.4;color:var(--ink)}.s3 .cards .card>p{margin-bottom:22px;flex:1}.s3 .who img{height:calc(20px * var(--h,1));width:auto;justify-self:start;filter:grayscale(1) brightness(.35)}.s3 .who img,.s3 .who span{grid-column:1}.s3 .who b{color:var(--accent);font-weight:500;white-space:nowrap}.s3 .who:after{content:"\2192";grid-column:2;grid-row:1/span 2;color:var(--ink2);transition:transform .15s,color .15s}.s3 .who:hover:after{transform:translateX(3px);color:var(--ink)}.s3 .wall{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:56px 0 64px}.s3 .wall .eye{text-align:center;margin:0 0 36px;display:block}.s3 .wall ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:36px 24px;align-items:center}.s3 .wall li{display:flex;justify-content:center;align-items:center;height:44px}.s3 .wall img{max-width:100%;width:auto;filter:grayscale(1) brightness(.35);opacity:.75}@media (max-width:860px){.s3 .wall ul{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:560px){.s3 .wall ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 16px}.s3 .wall img{max-height:26px}}.s3 .marq{border-top:1px solid var(--line2);border-bottom:1px solid var(--line2);padding:30px 0;overflow:hidden}.s3 .mq{max-width:1120px;margin:0 auto;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.s3 .mqt{list-style:none;margin:0;padding:0;gap:72px;width:max-content;animation:s3-mq 90s linear infinite}.s3 .mqt,.s3 .mqt li{display:flex;align-items:center}.s3 .mqt li{flex:none;height:44px}.s3 .mqt img{display:block;width:auto;max-height:40px;zoom:.72;filter:grayscale(1) brightness(.35);opacity:.8}.s3 .stack svg [class^=st-]{transform-box:fill-box;transform-origin:center}.s3 .st-bst,.s3 .st-btn,.s3 .st-cur,.s3 .st-l1,.s3 .st-l2,.s3 .st-l3,.s3 .st-res{animation:8s ease-in-out infinite both}.s3 .st-l1{animation-name:s3-stl1}.s3 .st-l2{animation-name:s3-stl2}.s3 .st-l3{animation-name:s3-stl3}@keyframes s3-stl1{0%,3%{opacity:.3}8%,92%{opacity:1}97%,to{opacity:.3}}@keyframes s3-stl2{0%,20%{opacity:.3}25%,92%{opacity:1}97%,to{opacity:.3}}@keyframes s3-stl3{0%,54%{opacity:.3}59%,92%{opacity:1}97%,to{opacity:.3}}.s3 .st-cur{animation-name:s3-stcur;transform-origin:0 0}@keyframes s3-stcur{0%,24%{transform:translate(-110px,-70px);opacity:0}28%{opacity:1}38%{transform:translate(0)}41%{transform:translate(0) scale(.82)}44%,92%{transform:translate(0);opacity:1}97%,to{transform:translate(0);opacity:0}}.s3 .st-bst{animation-name:s3-stbst}@keyframes s3-stbst{0%,40%{opacity:0;transform:scale(.6)}44%{opacity:1;transform:scale(1)}54%,to{opacity:0;transform:scale(1.15)}}.s3 .st-btn{animation-name:s3-stbtn}@keyframes s3-stbtn{0%,40%{transform:scale(1)}43%{transform:scale(.96)}47%,to{transform:scale(1)}}.s3 .st-res{animation-name:s3-stres}@keyframes s3-stres{0%,62%{transform:none}66%{transform:scale(1.05)}71%,to{transform:none}}@media (prefers-reduced-motion:reduce){.s3 .st-bst,.s3 .st-btn,.s3 .st-cur,.s3 .st-l1,.s3 .st-l2,.s3 .st-l3,.s3 .st-res{animation:none}}.s3 svg{overflow:visible}@keyframes s3-mq{to{transform:translateX(calc(-50% - 36px))}}@media (prefers-reduced-motion:reduce){.s3 .mqt{animation:none;flex-wrap:wrap;justify-content:center;width:auto;gap:28px 48px}.s3 .mqt li[aria-hidden]{display:none}}@media (max-width:560px){.s3 .mqt{gap:44px}.s3 .mqt img{max-height:30px}@keyframes s3-mq{to{transform:translateX(calc(-50% - 22px))}}}.s3 .cards .who{grid-template-rows:28px auto}.s3 .cards .who img{align-self:center}.s3 .bench{padding-top:96px;padding-bottom:96px}.s3 .bench .bh{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:28px}.s3 .bench h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.025em;font-weight:var(--hw);margin:0;line-height:1.1}.s3 .boards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}@media (max-width:980px){.s3 .boards{grid-template-columns:repeat(2,minmax(0,1fr))}}.s3 .bq .note{margin-top:16px}.s3 table.t td small{color:var(--ink3);font-size:13px;font-weight:400}.s3 #models table.t td:nth-child(2),.s3 #models table.t th:nth-child(2){text-align:left}.s3 #models table.t td:first-child,.s3 #models table.t th:first-child{width:44px}.s3 .phero{padding-bottom:72px}.s3 .hero+.sec{margin-top:56px}.s3 .bench+.end,.s3 .sec+.end{padding-top:24px}@media (max-width:860px){.s3 .phero{padding-bottom:56px}}@media (max-width:560px){.s3 .bench{padding-top:64px;padding-bottom:64px}.s3 .hero+.sec{margin-top:24px}.s3 .sec+.end{padding-top:40px}}.s3 .boards{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}@media (max-width:1100px){.s3 .boards{gap:24px}}@media (max-width:860px){.s3 .boards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.s3 .boards{grid-template-columns:minmax(0,1fr)}}.s3 a.card{color:var(--ink);text-decoration:none}.s3 a.card .who:after{content:none}.s3 a.card .who{grid-template-columns:minmax(0,1fr);color:var(--ink)}.s3 a.card .more:after{display:inline-block;transition:transform .15s}.s3 a.card:hover .more:after{transform:translateX(3px)}.s3 a.card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.s3 a.card .more:after{content:"\2192";margin-left:.3em}.s3 a.card .who>span{min-height:2.8em}@media (max-width:860px){.s3 a.card .who>span{min-height:0}}.s3 .board{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--rule);border-radius:12px;padding:20px 22px 16px;color:var(--ink);text-decoration:none;transition:border-color .2s;--lab:52px}.s3 .board:hover{border-color:var(--ink3)}.s3 .board .bmet{margin:6px 0 20px;font-size:13px;color:var(--ink2)}.s3 .board .bm{font-size:13px;color:var(--ink3);margin:auto 0 0;padding-top:16px}.s3 .board .bm:after{content:" \2192"}.s3 .board:hover .bm{color:var(--ink)}.s3 .hb{list-style:none;margin:0;padding:0;position:relative;display:flex;flex-direction:column;gap:12px;font:400 13px/16px var(--font);font-variant-numeric:tabular-nums}.s3 .hb:before{content:"";position:absolute;top:0;bottom:0;left:0;right:var(--lab);background:repeating-linear-gradient(90deg,transparent 0 calc(100% / var(--n,4) - 1px),var(--grid) 0 calc(100% / var(--n,4)));pointer-events:none}.s3 .hb li{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:5px}.s3 .hb span{max-width:calc(100% - var(--lab));padding-right:6px;background:var(--card);color:var(--ink2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s3 .hb .r{display:flex;align-items:center;gap:8px;width:100%}.s3 .hb i{flex:none;height:10px;min-width:2px;width:calc((100% - var(--lab)) * (var(--v) - var(--min,0)) / (var(--max) - var(--min,0)));border-radius:0 3px 3px 0;background:linear-gradient(var(--past),var(--past)) var(--card)}.s3 .hb b{font-weight:500;color:var(--ink2);background:var(--card);padding-right:4px}.s3 .hb li.us i{background:var(--accent)}.s3 .hb li.us b,.s3 .hb li.us span{color:var(--ink);font-weight:600}.s3 .hb li:not(.us):hover i{background:linear-gradient(var(--past-h),var(--past-h)) var(--card)}.s3 .hb li.us:hover i{filter:brightness(1.15)}.s3 .hx{position:relative;height:14px;margin-top:8px;font:400 11px/14px var(--font);color:var(--ink3);font-variant-numeric:tabular-nums}.s3 .hx span{position:absolute;top:0;left:calc((100% - var(--lab)) * var(--p) / 100);transform:translateX(-50%)}.s3 .hx span:first-child{transform:none}.s3 .hubhead{padding-top:72px;padding-bottom:0}.s3 .hubhead h1{font-size:clamp(40px,5.4vw,64px);line-height:1.02}.s3 .hubhead .sub{margin:20px 0 0}.s3 .hubs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding-top:72px;padding-bottom:0}.s3 .board.big{padding:28px 30px 22px;border-radius:14px;--lab:72px;scroll-margin-top:24px}.s3 .board.big h2{position:relative;margin:0;padding-left:22px;font-size:clamp(21px,2vw,25px);line-height:1.2;letter-spacing:-.02em;font-weight:var(--hw)}.s3 .board.big h2:before{content:"";position:absolute;left:0;top:.42em;width:10px;height:10px;border-radius:2px;background:var(--hue)}.s3 .board .bhd{display:flex;justify-content:space-between;gap:12px;margin:8px 0 26px;font-size:14px;color:var(--ink2)}.s3 .board .bhd em{font:500 11px/20px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);font-style:normal}.s3 .board.big .hb{font:400 15px/20px var(--font);gap:14px}.s3 .board.big .hb li{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:6px;align-items:baseline}.s3 .board.big .hb span{max-width:100%;justify-self:start}.s3 .board.big .hb span small{font-size:13px;color:var(--ink3);font-weight:400;margin-left:6px}.s3 .board.big .hb span .rk{display:inline-block;width:1.4em;margin:0;font:500 12px var(--mono);color:var(--ink3)}.s3 .board.big .hb em{font-style:normal;font-size:14px;color:var(--ink3);background:var(--card);padding-left:6px}.s3 .board.big .hb li.us em{color:var(--ink2)}.s3 #models .hb li.us i{background:var(--ink)}.s3 .board.big .hb .r{grid-column:1/-1;gap:10px}.s3 .board.big .hb i{height:14px}.s3 .board.big .hb b{font-size:15px}.s3 .board.big .hx{font-size:12px;margin-top:10px;height:16px}.s3 .board.big .bm{display:flex;justify-content:space-between;align-items:baseline;gap:8px 16px;flex-wrap:wrap;font-size:13px;padding-top:22px;margin-top:auto}.s3 .board.big .bm:after{content:none}.s3 .board.big .bm u{text-decoration:none;color:var(--ink);font-weight:600;white-space:nowrap}.s3 .board.big .bm u:after{content:"\2192";display:inline-block;margin-left:.3em;transition:transform .15s}.s3 .board.big:hover .bm u:after{transform:translateX(3px)}.s3 .board.big:focus-visible{outline:2px solid var(--hue);outline-offset:3px}.s3 .hubs+.end{padding-top:120px}@media (max-width:860px){.s3 .hubs{grid-template-columns:minmax(0,1fr);gap:20px}.s3 .hubhead{padding-top:48px}}@media (max-width:560px){.s3 .hubhead{padding-top:40px}.s3 .hubs{padding-top:48px;gap:16px}.s3 .board.big{padding:22px 18px 18px;--lab:60px}.s3 .board .bhd{margin-bottom:22px}.s3 .board.big .hb{font-size:14px;gap:12px}.s3 .board.big .hb i{height:12px}.s3 .board.big .hb b{font-size:14px}.s3 .board.big .hb span small{margin-left:4px}.s3 .hubs+.end{padding-top:80px}}.s3 p.proofline{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;font-size:16px;color:var(--ink)}.s3 p.proofline img{height:20px;width:auto;filter:grayscale(1) brightness(.35);padding-right:18px;border-right:1px solid var(--line2)}.s3 .mqt img[src$="apple.svg"],.s3 .mqt img[src$="microsoft.svg"]{max-height:64px}@media (max-width:560px){.s3 .mqt img[src$="apple.svg"],.s3 .mqt img[src$="microsoft.svg"]{max-height:48px}}.s3 .traffic{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:64px;align-items:center}.s3 .traffic .lead{margin-bottom:32px}.s3 .traffic .fig svg{max-width:460px;margin-left:auto}@media (max-width:860px){.s3 .traffic{grid-template-columns:minmax(0,1fr);gap:40px}.s3 .traffic .fig svg{margin:0 auto}}.s3{--cta:#b8411b;--c-agents:#2f6bd0;--c-browsers:#b0640c;--c-harness:#2d8270;--c-proxy:#9a4fb0;--ok:#2b7d52}.s3 #agents,.s3 .board[href$="#shopping"],.s3 [data-p=agents],.s3[data-p=agents]{--hue:var(--c-agents)}.s3 #browsers,.s3 .board[href$="#browsers"],.s3 [data-p=browsers],.s3[data-p=browsers]{--hue:var(--c-browsers)}.s3 #harness,.s3 .board[href$="#tools"],.s3 [data-p=harness],.s3[data-p=harness]{--hue:var(--c-harness)}.s3 [data-p=proxy],.s3[data-p=proxy]{--hue:var(--c-proxy)}.s3 #agents,.s3 #browsers,.s3 #harness,.s3 .board[href*="#"],.s3 [data-p],.s3[data-p]{--accent:var(--hue);--accent-fill:var(--hue);--accent-wash:color-mix(in srgb,var(--hue) 8%,var(--card))}.s3 .board .eye:before,.s3 a.card h2:before{content:"";display:inline-block;width:.42em;height:.42em;border-radius:2px;background:var(--hue,var(--ink));margin-right:.42em;vertical-align:.08em}.s3 .board .eye:before{width:9px;height:9px;margin-right:8px;vertical-align:0}.s3 .board:hover,.s3 a.card:hover{border-color:color-mix(in srgb,var(--hue) 55%,var(--line))}.s3 .cards a.card .who{display:block;padding-top:18px}.s3 .cards a.card .who>span{display:block;min-height:0;font-size:16px;line-height:1.75;color:var(--ink2)}.s3 .cards a.card .who img{display:inline;grid-column:auto;height:calc(22px * var(--h,1));width:auto;vertical-align:middle;margin:-4px 3px 0;filter:none;opacity:1}.s3 .cards a.card .who b{color:var(--hue);font-weight:600}.s3 .cards a.card .who>span{line-height:1.6}.s3 .cards a.card .who img{margin:0 2px;vertical-align:initial}.s3 .cards a.card .who img[src$="parallel.svg"]{height:15px;vertical-align:-1px}.s3 .cards a.card .who img[src$="gumloop.svg"]{height:18px;vertical-align:-4px}.s3 .cards a.card .who img[src$="nous-research-wordmark.svg"]{height:16px;vertical-align:-1px}.s3 .logo .mark,.s3 footer .fcopy .mark{display:inline-block;width:24px;height:24px;background:currentColor;-webkit-mask:url(/logo-black.svg) center/contain no-repeat;mask:url(/logo-black.svg) center/contain no-repeat}.s3 footer{padding:56px 0 40px}.s3 footer .fw{max-width:1248px;margin:0 auto;padding:0 24px}.s3 footer .fgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 32px}.s3 footer h2{margin:0 0 12px;font:500 12px/16px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}.s3 footer .flinks{display:flex;flex-direction:column;align-items:flex-start}.s3 footer .flinks a{display:inline-flex;align-items:center;min-height:36px;font-size:15px;color:var(--ink2);transition:color .15s}.s3 footer .flegal button:hover,.s3 footer a:hover{color:var(--ink)}.s3 footer a:focus-visible,.s3 footer button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.s3 footer .fbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-top:48px;padding-top:20px;border-top:1px solid var(--line);font-size:13px;color:var(--ink3)}.s3 footer .fbar-r,.s3 footer .flegal{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px}.s3 footer .fbar-r>a,.s3 footer .flegal a{display:inline-flex;align-items:center;min-height:40px;color:var(--ink3);transition:color .15s}.s3 footer .flegal button{all:unset;cursor:pointer;display:inline-flex;align-items:center;min-height:40px;color:var(--ink3);transition:color .15s}.s3 footer .fbar-r>a:hover,.s3 footer .flegal a:hover,.s3 footer .flegal button:hover{color:var(--ink)}.s3 footer [data-md-toggle]{height:32px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink2);font:500 13px var(--font);transition:background-color .15s,color .15s}.s3 footer [data-md-toggle]:hover{background:var(--wash);color:var(--ink)}.s3 footer .fcopy{align-items:center;gap:10px;font:400 13px/1.6 var(--mono);color:var(--ink2)}.s3 footer .fcopy,.s3 footer .fcopy>span{display:inline-flex}.s3 footer .fcopy .mark{width:18px;height:18px;background:var(--ink3)}@media (max-width:767px){.s3 footer{padding:40px 0 28px}.s3 footer .fgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}.s3 footer .flinks a{min-height:44px}.s3 footer .fbar{margin-top:32px}}.s3{--ease:cubic-bezier(.22,1,.36,1)}.s3 .btn{transition:background-color .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease),transform .15s var(--ease)}.s3 .btn.or:hover{background:color-mix(in srgb,var(--cta,var(--accent)) 86%,var(--ink))}.s3 .btn.dark:hover{background:color-mix(in srgb,var(--ink) 84%,var(--paper))}.s3 .btn.ghost:hover{border-color:var(--ink3);background:var(--wash)}.s3 .btn:active{transform:translateY(1px)}.s3 .btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.s3 .by a,.s3 .crumbs a,.s3 .custom a,.s3 .note a,.s3 .see a,.s3 a.more{transition:color .15s var(--ease)}.s3 .see a:hover,.s3 a.more:hover{color:var(--accent)}.s3 .crumbs a:hover,.s3 .custom a:hover,.s3 .note a:hover{color:var(--ink)}.s3 .by a:hover{color:var(--accent)}.s3 .faq summary:after{transition:color .15s var(--ease)}.s3 .faq summary:hover:after{color:var(--ink)}.s3 .board .bm{transition:color .2s var(--ease)}.s3 .hb i{background:color-mix(in srgb,var(--ink2) 30%,var(--card));transition:background-color .2s var(--ease),filter .2s var(--ease)}.s3 .hb li:not(.us):hover i{background:color-mix(in srgb,var(--ink2) 55%,var(--card))}.s3 .bar i{background:color-mix(in srgb,var(--ink2) 30%,var(--paper));transition:background-color .2s var(--ease)}.s3 .bar:not(.us):hover i{background:color-mix(in srgb,var(--ink2) 55%,var(--paper))}@media (prefers-reduced-motion:reduce){.s3 .bar i,.s3 .board,.s3 .board .bm,.s3 .board.big .bm u:after,.s3 .btn,.s3 .by a,.s3 .card,.s3 .crumbs a,.s3 .custom a,.s3 .faq summary:after,.s3 .hb i,.s3 .note a,.s3 .see a,.s3 .who:after,.s3 a.card .more:after,.s3 a.more,.s3 footer .fbar-r>a,.s3 footer .flegal a,.s3 footer .flegal button,.s3 footer .flinks a,.s3 footer [data-md-toggle]{transition:none}.s3 .btn:active{transform:none}}html.dark:has(main.s3),html.dark:has(main.s3) body{background:#0a0a0a;color-scheme:dark}html.dark .s3{--paper:#0a0a0a;--card:#141414;--ink:#ededed;--ink2:#a1a1a1;--ink3:#7d7d7d;--line:#262626;--line2:#3a3a3a;--wash:#1c1c1c;--accent:#fe750e;--accent-fill:#fe750e;--accent-wash:#2a1708;--on-accent:#0a0a0a;color-scheme:dark;--grid:rgb(255 255 255/.08);--rule:rgb(255 255 255/.14);--past:rgb(237 237 237/.28);--past-h:rgb(237 237 237/.55);--cta:#fe750e;--c-agents:#5b9bf8;--c-browsers:#f2a03d;--c-harness:#4fc1b0;--c-proxy:#b597c4;--ok:#5fbf8f;--photo:#262626;--photo-fg:#7d7d7d}html.dark .s3 .btn.dark{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line2)}html.dark .s3 .btn.dark:hover{background:var(--wash)}html.dark .s3 img[src*="company-logos/"]{filter:brightness(0) invert(1);opacity:.7}html.dark .s3 .cards a.card .who img,html.dark .s3 .who img{filter:brightness(0) invert(1);opacity:.75}html.dark .s3 #models .hb li.us i{background:var(--hue,var(--ink2))}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_8c25df{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_8c25df{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,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:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_8eaea4{font-family:Geist,Geist Fallback;font-style:normal}.__variable_8eaea4{--font-geist-sans:"Geist","Geist Fallback"}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");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:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Playfair Display Fallback;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_63c8e8{font-family:Playfair Display,Playfair Display Fallback;font-style:normal}.__variable_63c8e8{--font-playfair:"Playfair Display","Playfair Display Fallback"}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/287637279c44650d-s.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b387097da7407747-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/cb9f64d62d112b41-s.p.woff2) format("woff2");unicode-range:u+00??,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:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_a0f935{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_a0f935{--font-fraunces:"Fraunces","Fraunces Fallback"}