@font-face{font-family:"Archivo";font-style:normal;font-weight:500 800;font-stretch:100% 125%;font-display:swap;src:url("../fonts/archivo.woff2") format("woff2")}@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400 600;font-display:swap;src:url("../fonts/plex-sans.woff2") format("woff2")}@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/plex-mono-400.woff2") format("woff2")}@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/plex-mono-500.woff2") format("woff2")}:root{color-scheme:light;--bg:#f5f8f8;--surface:#ffffff;--text:#0f2a33;--muted:#4b6570;--line:#d3dcdc;--rule:#0f2a33;--navy:#01303f;--blue:#1f9fd6;--accent:#02577a;--tint:#e3f1f7;--band:#01303f;--on-band:#eef6fa;--on-band-muted:#a9c3cc;--btn-bg:#01303f;--btn-fg:#ffffff;--btn-hover:#02577a;--field:#f5f8f8;--code-bg:#e6eeee;--star:#d99a00;--good:#157a4c;--warn:#b26b00;--bad:#b8432a;--note-bg:#fff4d6;--error-bg:#fdecea;--error-fg:#8a1c12;--ok-bg:#dcf3e7;--ok-fg:#0d6b3c;--shadow:0 18px 40px -22px rgba(1,48,63,.45);--tint-sky:#e3f1f7;--tint-coral:#fbe8df;--tint-mint:#dff2e9;--display:"Archivo","Helvetica Neue",Arial,sans-serif;--sans:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--fs-hero:clamp(38px,5.4vw,68px);--fs-h1:clamp(34px,4.4vw,56px);--fs-h2:clamp(28px,3.4vw,42px);--fs-h3:clamp(21px,2vw,26px);--fs-lede:19px;--fs-small:15px;--wrap:1180px;--gutter:clamp(16px,4vw,40px);--section:clamp(64px,8vw,104px);--r-sm:6px;--r-lg:12px}:root[data-theme="dark"]{color-scheme:dark;--bg:#0b1c22;--surface:#10262e;--text:#e6f0f3;--muted:#9ab3bc;--line:#24424c;--rule:#9ab3bc;--accent:#7fcdf0;--tint:#133440;--band:#06171d;--btn-bg:#e6f0f3;--btn-fg:#01303f;--btn-hover:#bfe6f7;--field:#0b1c22;--code-bg:#173540;--star:#ffc93c;--good:#3fbf7f;--warn:#f0b23c;--bad:#ff8d6e;--note-bg:rgba(255,201,60,.12);--error-bg:rgba(255,99,77,.14);--error-fg:#ffb3a6;--ok-bg:rgba(79,209,139,.16);--ok-fg:#86e8b4;--shadow:0 18px 40px -22px rgba(0,0,0,.7);--tint-sky:#133440;--tint-coral:#33231f;--tint-mint:#12322a}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,h4{margin:0;font-family:var(--display);font-stretch:112%;font-weight:750;letter-spacing:-0.02em;line-height:1.08;text-wrap:balance}p{margin:0 0 1em}ul,ol{margin:0;padding:0}:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}.skip{position:absolute;left:-9999px;top:8px;z-index:100;padding:8px 14px;background:var(--navy);color:#fff}.skip:focus{left:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nowrap{white-space:nowrap}.ico{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mono{font-family:var(--mono);font-size:12.5px;font-weight:400;letter-spacing:.02em;color:var(--muted)}.muted{color:var(--muted)}.lede{font-size:var(--fs-lede);color:var(--muted);max-width:36em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 20px;border:1px solid var(--btn-bg);border-radius:var(--r-sm);background:var(--btn-bg);color:var(--btn-fg);font:600 15px/1.1 var(--sans);text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.btn:hover{background:var(--btn-hover);border-color:var(--btn-hover);color:var(--btn-fg)}.btn-line{background:transparent;color:var(--text);border-color:var(--text)}.btn-line:hover{background:var(--text);border-color:var(--text);color:var(--bg)}.btn-sm{padding:10px 15px;font-size:14.5px}.btn-light{background:#fff;border-color:#fff;color:var(--navy)}.btn-light:hover{background:#d9eef8;border-color:#d9eef8;color:var(--navy)}.btn-ghost-light{background:transparent;border-color:rgba(255,255,255,.45);color:#fff}.btn-ghost-light:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}.link{color:var(--accent);font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px}.link:hover{text-decoration-thickness:2.5px}.more{display:inline-flex;gap:8px;color:var(--accent);font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px}.more:hover{text-decoration-thickness:2.5px}.site-header{position:sticky;top:0;z-index:50;background:var(--surface);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:20px;min-height:72px}.brand{display:block;margin-right:auto}.brand img{width:170px}.logo-dark,[data-theme="dark"] .logo-light{display:none}[data-theme="dark"] .logo-dark{display:block}.nav{display:flex;align-items:center;gap:28px;font-size:15px;font-weight:500}.nav a:not(.btn){text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}.nav a:not(.btn):hover{color:var(--accent)}.nav a[aria-current="page"]{border-bottom-color:var(--blue)}.nav-cta{margin-left:4px}.theme-btn,.menu-btn{display:inline-grid;place-items:center;height:38px;border:1px solid var(--line);border-radius:var(--r-sm);background:transparent;color:var(--text);cursor:pointer}.theme-btn{width:38px;padding:0}.theme-btn:hover,.menu-btn:hover{border-color:var(--text)}.theme-btn .ico{width:18px;height:18px}.ico-sun,[data-theme="dark"] .ico-moon{display:none}[data-theme="dark"] .ico-sun{display:block}.menu-btn{display:none;padding:0 14px;font:600 14.5px/1 var(--sans)}.block{padding-block:var(--section)}.block.surface{background:var(--surface);border-block:1px solid var(--line)}.block.tight{padding-block:clamp(48px,6vw,72px)}.block + .block:not(.surface):not(.band){border-top:1px solid var(--line)}.head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;align-items:end;margin-bottom:44px}.head h2{font-size:var(--fs-h2)}.head p{margin:0;color:var(--muted);max-width:36em}.h2{font-size:var(--fs-h2)}.h3{font-size:var(--fs-h3)}.page-head{padding-block:clamp(48px,7vw,88px) clamp(40px,5vw,64px);border-bottom:1px solid var(--line)}.page-head h1{font-size:var(--fs-h1);max-width:18em}.page-head .lede{margin:22px 0 0}.crumbs{margin:0 0 18px;font:400 12.5px/1.4 var(--mono);letter-spacing:.02em;color:var(--muted)}.crumbs a{color:inherit;text-decoration:none}.crumbs a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.page-head .actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:30px}.head-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,72px);align-items:start}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px 26px 8px}.sheet h2{margin:0 0 8px;font:500 14px/1.3 var(--mono);letter-spacing:0;color:var(--accent);font-stretch:100%}.sheet dl{margin:0}.sheet dl>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:12px;padding:14px 0;border-top:1px solid var(--line)}.sheet dl>div:first-child{border-top:0}.sheet dt{padding-top:2px;font:400 12.5px/1.5 var(--mono);color:var(--muted)}.sheet dd{margin:0;font-size:15.5px;line-height:1.5;overflow-wrap:anywhere}.sheet dd a{color:var(--accent)}.sheet .btn{margin:10px 0 18px}.sheet .aside-text{margin:0 0 4px;color:var(--muted);font-size:15.5px;line-height:1.5}.hero{padding-block:clamp(56px,8vw,104px) clamp(48px,6vw,80px)}.hero h1{font-size:var(--fs-hero)}.hero .lede{margin:26px 0 0}.hero .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.clients{background:var(--surface);border-block:1px solid var(--line)}.clients .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:14px 34px;padding-block:22px}.clients ul{list-style:none;display:flex;flex-wrap:wrap;gap:12px 28px}.clients li{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600}.client-logo{flex:none;width:30px;height:30px;display:grid;place-items:center;overflow:hidden;border-radius:var(--r-sm);background:var(--logo-bg,transparent)}.client-logo img{max-width:74%;max-height:74%;width:auto;height:auto}.client-logo.is-square img{max-width:100%;max-height:100%}.project{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(28px,4vw,56px);align-items:center;padding-block:36px;border-top:1px solid var(--line)}.project:last-of-type{border-bottom:1px solid var(--line)}.project h3{font-size:var(--fs-h3);margin-top:10px}.project h3 a{text-decoration:none}.project h3 a:hover{color:var(--accent)}.project .summary{margin:14px 0 0;color:var(--muted)}.project .actions{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:22px}.project-meta{display:flex;align-items:center;gap:10px;margin:0;font:400 12.5px/1.4 var(--mono);letter-spacing:.02em;color:var(--muted)}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:22px 0 0}.facts dt{font:400 12px/1.4 var(--mono);color:var(--muted)}.facts dd{margin:2px 0 0;font-size:15px;font-weight:500}.shot{margin:0;padding:18px 18px 8px;border-radius:var(--r-lg);background:var(--tint-sky)}.shot img{border-radius:8px}.shot figcaption{padding:8px 2px 4px;font:400 11.5px/1.4 var(--mono);color:var(--muted)}.tint-sky{--tint-here:var(--tint-sky)}.tint-coral{--tint-here:var(--tint-coral)}.tint-mint{--tint-here:var(--tint-mint)}.shot.tint-sky,.shot.tint-coral,.shot.tint-mint{background:var(--tint-here)}.site-logos{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:36px;color:var(--muted);font-size:15.5px}.site-logos a{display:block}.site-logos img{height:30px;width:auto}[data-theme="dark"] .site-logos a{padding:6px 10px;border-radius:var(--r-sm);background:#fff}.index-wrap{overflow-x:auto}.index{width:100%;border-collapse:collapse;table-layout:fixed}.index th{padding:0 16px 12px 0;border-bottom:1.5px solid var(--rule);text-align:left;font:500 12px/1.4 var(--mono);color:var(--muted)}.index td{padding:18px 16px 18px 0;border-bottom:1px solid var(--line);vertical-align:top}.index th:first-child,.index td:first-child{width:26%}.index th:last-child,.index td:last-child{width:140px;padding-right:0}.index td:first-child{font-weight:600}.index td:first-child a{text-decoration:none}.index td:first-child a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.index td:nth-child(2){color:var(--muted)}.index td:last-child{white-space:nowrap;font:500 13px/1.6 var(--mono)}.index tr[id]{scroll-margin-top:96px}.index-group + .index-group{margin-top:48px}.index-group h2{margin-bottom:6px;font-size:var(--fs-h3)}.index-group>p{margin:0 0 18px;color:var(--muted)}.index-foot{margin:22px 0 0;color:var(--muted)}.steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;counter-reset:step}.steps li{padding-top:18px;border-top:2px solid var(--rule);counter-increment:step}.steps li::before{content:"0" counter(step);font:500 13px var(--mono);color:var(--accent)}.steps h3{margin:8px 0;font-size:20px}.steps p{margin:0;color:var(--muted);font-size:16px}.steps .when{display:block;margin-top:10px;font:400 12px/1.4 var(--mono);color:var(--muted)}.band{background:var(--band);color:var(--on-band)}.proof{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:48px;align-items:end}.proof figure{margin:0}.proof blockquote{margin:0;font-family:var(--display);font-stretch:105%;font-weight:600;font-size:clamp(24px,2.8vw,34px);line-height:1.3;letter-spacing:-0.01em}.proof figcaption{display:flex;align-items:center;gap:10px;margin-top:22px;font:500 13px/1.4 var(--mono);color:var(--on-band-muted)}.rating{padding-left:28px;border-left:1px solid rgba(255,255,255,.2)}.rating b{display:block;font-family:var(--display);font-size:56px;line-height:1}.rating p{margin:8px 0 0;color:var(--on-band-muted)}.rating a{color:#fff}.closer{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:center}.closer h2{font-size:clamp(32px,4vw,50px)}.closer p{margin:16px 0 0;color:var(--muted);max-width:32em}.closer-box{display:grid;gap:14px;padding:28px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.closer-box p{margin:0;font:400 13px/1.5 var(--mono)}.closer-box p a{color:var(--text);font-size:15px}.case-cards{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.case-card{position:relative;display:flex;flex-direction:column;scroll-margin-top:96px}.case-card .shot{margin-bottom:18px}.case-card h3{margin:10px 0 0;font-size:21px;line-height:1.2}.case-card h3 a{text-decoration:none}.case-card h3 a::after{content:"";position:absolute;inset:0}.case-card:hover h3 a{color:var(--accent)}.case-card .summary{margin:10px 0 0;color:var(--muted);font-size:16px}.case-card .more{margin-top:14px}.case-card:focus-within{outline:2px solid var(--blue);outline-offset:6px;border-radius:4px}.case-card a:focus-visible{outline:none}.group-title{margin:0 0 8px;font-size:var(--fs-h3)}.group-note{margin:0 0 28px;color:var(--muted)}.group-title + .case-cards{margin-top:28px}.case-cards + .group-title{margin-top:var(--section)}.site-grid{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 28px}.site-card{position:relative}.site-frame{overflow:hidden;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.site-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--line);font:400 11.5px var(--mono);color:var(--muted)}.site-bar span{flex:none;width:8px;height:8px;border-radius:50%;background:var(--line)}.site-bar b{margin-left:6px;overflow:hidden;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.site-frame>img,.site-logo,.site-placeholder{display:block;width:100%;height:auto;aspect-ratio:16 / 10;object-fit:cover;object-position:top}.site-logo{display:grid;place-items:center;background:#fff}.site-logo img{width:auto;height:auto;max-width:64%;max-height:44%;object-fit:contain}.site-placeholder{display:grid;place-items:center;padding:24px;background:var(--tint)}.site-placeholder span{font-family:var(--display);font-size:21px;font-weight:700;text-align:center}.site-meta{margin:16px 0 4px;font:400 12.5px var(--mono);color:var(--muted)}.site-name{margin:0;font-size:20px;line-height:1.2}.site-name a{text-decoration:none}.site-name a::after{content:"";position:absolute;inset:0}.site-card:hover .site-name a{color:var(--accent)}.site-summary{margin:8px 0 0;color:var(--muted);font-size:16px}.site-visit{margin:8px 0 0;font:400 12.5px var(--mono);color:var(--accent)}.site-card:focus-within .site-frame{outline:2px solid var(--blue);outline-offset:3px}.site-card a:focus-visible{outline:none}.case-head-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:26px 0 0;font:400 13px/1.4 var(--mono);color:var(--muted)}.case-figure{max-width:960px;margin:clamp(32px,5vw,56px) 0 0}.article-grid{display:grid;grid-template-columns:minmax(0,720px) minmax(0,320px);justify-content:space-between;gap:56px;padding-block:clamp(40px,6vw,64px) var(--section)}.aside{position:sticky;top:104px;align-self:start}.aside-more{margin-top:28px}.aside-more h2{margin:0 0 6px;font:400 12.5px/1.4 var(--mono);letter-spacing:0;color:var(--muted);font-stretch:100%}.aside-more a{display:block;padding:13px 0;border-top:1px solid var(--line);font-weight:600;font-size:15.5px;line-height:1.35;text-decoration:none}.aside-more a:hover{color:var(--accent)}.svc-time{font:400 13px/1.4 var(--mono);color:var(--muted)}.svc-body{max-width:1040px}.shot.svc-shot{margin:0 0 44px;padding:0;background:none}.svc-shot img{border-radius:var(--r-lg)}.cols-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}.cols-2 h2,.included-title{margin:0 0 16px;font-size:21px}.ticks{list-style:none;display:grid;gap:10px}.ticks li{position:relative;padding-left:24px}.ticks li::before{content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;border-radius:2px;background:var(--blue)}.ticks.dash li::before{top:.8em;width:10px;height:2px;border-radius:0;background:var(--muted)}.example{margin-top:26px;padding:18px 20px;border-left:3px solid var(--blue);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--surface);font-size:16px}.start-here{margin:0 0 32px}.svc-tool{margin:-14px 0 32px;font-size:16px}.stack-line{margin:36px 0 0;padding-top:18px;border-top:1px solid var(--line);font:400 13px/1.7 var(--mono);color:var(--muted)}.stack-line b{font-weight:500;color:var(--text)}.included{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;padding:32px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.included-note{margin:18px 0 0;color:var(--muted);font-size:15.5px}.reading{margin-top:56px;max-width:760px}.reading h2{margin:0 0 12px;font-size:21px}.reading ul{list-style:none;border-top:1.5px solid var(--rule)}.reading a{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:16px 0;border-bottom:1px solid var(--line);font-weight:600;text-decoration:none}.reading a:hover span{color:var(--accent)}.reading small{flex:none;font:400 12.5px var(--mono);color:var(--muted)}.rules{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;counter-reset:rule}.rules li{padding:22px 0;border-top:1px solid var(--line);counter-increment:rule}.rules li::before{content:"0" counter(rule);font:500 13px var(--mono);color:var(--accent)}.rules h3{margin:6px 0 8px;font-size:20px}.rules p{margin:0;color:var(--muted)}.founder{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;align-items:start;max-width:900px}.founder img{border-radius:var(--r-lg)}.founder h3{font-size:var(--fs-h3)}.founder .role{margin:6px 0 16px}.founder p{color:var(--muted)}.founder .links{display:flex;gap:20px}.score{display:flex;align-items:center;gap:18px;margin-bottom:36px}.score b{font-family:var(--display);font-size:56px;line-height:1}.score p{margin:6px 0 0;color:var(--muted)}.stars{display:inline-block;width:92px;height:17px;background:var(--star);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 20'%3E%3Cpath d='M10 .8l2.8 5.8 6.3.9-4.6 4.4 1.1 6.3L10 15.2l-5.6 3 1.1-6.3L.9 7.5l6.3-.9z'/%3E%3C/svg%3E") repeat-x 0 0 / 18.4px 17px;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 20'%3E%3Cpath d='M10 .8l2.8 5.8 6.3.9-4.6 4.4 1.1 6.3L10 15.2l-5.6 3 1.1-6.3L.9 7.5l6.3-.9z'/%3E%3C/svg%3E") repeat-x 0 0 / 18.4px 17px}.review-grid{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.review{display:flex;flex-direction:column;gap:14px;padding:24px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.review blockquote{margin:0;flex:1;font-size:16px;line-height:1.55}.review .who{margin:0;font-size:15px}.review .who b{display:block}.review .who span{color:var(--muted);font-size:14px}.stack-table{width:100%;border-collapse:collapse}.stack-table th,.stack-table td{padding:16px 16px 16px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.stack-table th{width:200px;font:500 13px/1.6 var(--mono);color:var(--muted)}.stack-table td{color:var(--muted)}.stack-table em{font-style:normal;font-weight:500;color:var(--text)}.faq{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(28px,5vw,72px)}.faq>div:first-child h2{position:sticky;top:104px;font-size:var(--fs-h3)}.faq-list details{border-bottom:1px solid var(--line);scroll-margin-top:96px}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:20px;padding:20px 0;list-style:none;cursor:pointer;font-weight:600;font-size:18px;line-height:1.4}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";flex:none;font:400 22px/1 var(--mono);color:var(--accent)}.faq-list details[open] summary::after{content:"\2212"}.faq-list summary:hover{color:var(--accent)}.faq-list details p{margin:0 0 20px;color:var(--muted);max-width:42em}.faq-list .faq-link{margin-top:-8px}.faq-groups .block:first-child{border-top:0}.contact-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,72px);align-items:start;padding-block:clamp(48px,7vw,88px)}.contact-side h1{font-size:var(--fs-h1)}.contact-side .lede{margin:22px 0 0}.contact-side .sheet{margin-top:36px}.contact-side .direct{margin:24px 0 0}.form{padding:clamp(24px,4vw,40px);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.form h2{margin:0 0 6px;font-size:26px}.form-body>p{margin:0 0 26px;color:var(--muted)}.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{margin-bottom:20px}.field label{display:block;margin-bottom:7px;font-size:15px;font-weight:600}.field label small,.chips legend small{font-weight:400;color:var(--muted)}.field input,.field select,.field textarea{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--field);color:var(--text);font:16px/1.4 var(--sans);transition:border-color .15s,background-color .15s}.field textarea{min-height:150px;resize:vertical}.field select{appearance:none;padding-right:36px;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 20px) 55%,calc(100% - 15px) 55%;background-size:5px 5px;background-repeat:no-repeat}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--text);background-color:var(--surface)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;padding:0;border:0}.chips legend{margin-bottom:9px;padding:0;font-size:15px;font-weight:600}.chips label{position:relative}.chips input{position:absolute;inset:0;opacity:0;cursor:pointer}.chips span{display:inline-block;padding:8px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--field);font-size:15px;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.chips label:hover span{border-color:var(--text)}.chips input:checked + span{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-fg)}.chips input:focus-visible + span{outline:2px solid var(--blue);outline-offset:2px}.estimate{display:flex;gap:10px;align-items:flex-start;margin:-6px 0 22px;padding:12px 14px;border-radius:var(--r-sm);background:var(--tint);font-size:15px;line-height:1.45}.estimate[hidden]{display:none}.estimate .ico{flex:none;width:18px;height:18px;margin-top:1px;color:var(--accent);stroke-width:2.2}.form-foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:8px}.form-foot small{max-width:30em;color:var(--muted);font-size:13px}.form-foot small a{color:inherit}.form-error{display:none;margin-bottom:18px;padding:12px 14px;border-radius:var(--r-sm);background:var(--error-bg);color:var(--error-fg);font-size:15px}.form-error.show{display:block}.form-done{display:none}.form.is-done .form-body{display:none}.form.is-done .form-done{display:block}.form-done h2{margin-bottom:12px}.grecaptcha-badge{visibility:hidden}.hp{position:absolute;left:-9999px}.book-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:56px;align-items:start}.book-grid .lede{margin:18px 0 0}.book-alt{margin:22px 0 0;color:var(--muted);font-size:var(--fs-small)}.book-cal{min-height:420px;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);scroll-margin-top:96px}.book-placeholder{display:grid;justify-items:center;align-content:center;gap:14px;min-height:420px;padding:56px 24px;text-align:center}.book-placeholder .ico{width:32px;height:32px;color:var(--accent)}.book-placeholder p{margin:0;color:var(--muted)}.book-placeholder small{color:var(--muted);font-size:13px}.book-cal.is-open .book-placeholder{display:none}.book-cal.is-open .book-frame{min-height:620px}.book-cal.is-failed .book-frame::before{content:"The calendar didn't load. Use the Cal.com link to book instead.";display:block;padding:56px 24px;text-align:center;color:var(--muted)}#book{scroll-margin-top:72px}.post-grid{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}.post-card{display:block;text-decoration:none}.post-card-img{display:block;aspect-ratio:1200 / 630;overflow:hidden;border-radius:var(--r-lg);background:var(--navy)}.post-card-img img{width:100%;height:100%;object-fit:cover}.post-card-title{margin:20px 0 0;font-size:22px;line-height:1.2}.post-card-summary{margin:16px 0 10px;max-width:34em;color:var(--muted)}.post-card-meta{margin:0;font:400 12.5px var(--mono);color:var(--accent)}.post-card:hover .post-card-meta{text-decoration:underline;text-underline-offset:4px}.post-meta{margin:22px 0 0;font:400 13px/1.4 var(--mono);color:var(--muted)}.prose{color:var(--text);font-size:18px;line-height:1.7}.prose p{margin:0 0 1.1em}.prose h1,.prose h2{margin:56px 0 16px;padding-top:20px;border-top:1px solid var(--line);font-size:var(--fs-h3);line-height:1.15}.prose>h2:first-child,.post-body>:first-child{margin-top:0}.prose h3{display:flex;align-items:baseline;gap:12px;margin:36px 0 10px;font-size:20px;line-height:1.3}.prose h3 .n{flex:none;min-width:30px;padding:3px 0;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);text-align:center;font:500 13px/1.4 var(--mono);color:var(--accent);transform:translateY(-2px)}.prose h4{margin:28px 0 8px;font-size:18px}.prose ul{list-style:none;margin:0 0 1.4em}.prose ul li{position:relative;margin-bottom:10px;padding-left:24px}.prose ul li::before{content:"";position:absolute;left:2px;top:.7em;width:8px;height:8px;border-radius:2px;background:var(--blue)}.prose ol{margin:0 0 1.4em;padding-left:1.4em}.prose ol li{margin-bottom:10px;padding-left:6px}.prose ol li::marker{font-family:var(--mono);font-size:.85em;color:var(--accent)}.prose a:not(.btn){color:var(--accent);font-weight:600;text-underline-offset:4px}.prose code{padding:1px 6px;border-radius:4px;background:var(--code-bg);font-family:var(--mono);font-size:.86em}.prose pre{margin:0 0 1.4em;padding:18px 20px;overflow-x:auto;border-radius:var(--r-lg);background:var(--navy);color:var(--on-band);font-size:14px;line-height:1.6}.prose pre code{padding:0;background:none;color:inherit;font-size:inherit}.prose blockquote{margin:28px 0;padding:4px 0 4px 22px;border-left:3px solid var(--blue);font-size:20px;line-height:1.55}.prose blockquote p:last-child{margin-bottom:0}.prose blockquote footer{margin-top:10px;font:400 13px var(--mono);color:var(--muted)}.prose .callout{margin:40px 0 0;padding:22px 24px 6px;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:0 var(--r-lg) var(--r-lg) 0;background:var(--surface)}.prose table{display:block;overflow-x:auto;width:100%;margin:8px 0 24px;border-collapse:collapse;font-size:16px;line-height:1.5}.prose th,.prose td{padding:14px 16px 14px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.prose thead th{border-bottom:1.5px solid var(--rule);font:500 12.5px var(--mono);color:var(--muted)}.prose img{margin:8px 0 24px;border-radius:var(--r-lg)}.prose hr{margin:48px 0;border:0;border-top:1px solid var(--line)}.post-body>p:first-child{font-size:21px;line-height:1.5}.post-cover{margin:0 0 40px}.post-cover img{width:100%;border-radius:var(--r-lg)}.draft-note{padding:12px 16px;border-radius:var(--r-sm);background:var(--note-bg);font-size:15px}.lc-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:56px;align-items:start;padding-block:clamp(40px,6vw,64px) var(--section)}.lc-section + .lc-section{margin-top:48px}.lc-section-title{margin-bottom:4px;padding-top:20px;border-top:1.5px solid var(--rule);font-size:var(--fs-h3)}.lc-item{padding:22px 0;border-bottom:1px solid var(--line)}.lc-q{display:flex;align-items:baseline;gap:14px;margin:0 0 6px;font-size:18.5px;font-weight:600;line-height:1.35}.lc-q .n{flex:none;min-width:30px;padding:3px 0;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);text-align:center;font:500 13px/1.4 var(--mono);color:var(--accent);transform:translateY(-2px)}.lc-item[data-answer="yes"] .lc-q .n{border-color:var(--good);background:var(--good);color:#fff}.lc-item[data-answer="unsure"] .lc-q .n{border-color:var(--warn);background:var(--warn);color:#fff}.lc-item[data-answer="no"] .lc-q .n{border-color:var(--bad);background:var(--bad);color:#fff}.lc-how{margin:0 0 14px 44px;color:var(--muted);font-size:16px}.chips.lc-answers{margin:0 0 0 44px}.lc-answers input[value="yes"]:checked + span{border-color:var(--good);background:var(--good);color:#fff}.lc-answers input[value="unsure"]:checked + span{border-color:var(--warn);background:var(--warn);color:#fff}.lc-answers input[value="no"]:checked + span{border-color:var(--bad);background:var(--bad);color:#fff}.lc-result{position:sticky;top:96px;padding:26px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.lc-result>.mono{margin:0;color:var(--accent)}.lc-score{margin:6px 0 14px;font-family:var(--display);font-size:60px;font-weight:750;line-height:1}.lc-score span{margin-left:6px;font:400 15px var(--mono);color:var(--muted)}.lc-bar{height:6px;margin-bottom:18px;overflow:hidden;border-radius:3px;background:var(--line)}.lc-bar span{display:block;width:0;height:100%;background:var(--blue);transition:width .4s}.lc-result.is-low .lc-bar span{background:var(--bad)}.lc-result.is-good .lc-bar span{background:var(--good)}.lc-verdict{margin:0 0 4px;font-size:16.5px;font-weight:600;line-height:1.45}.lc-progress{margin:0;font:400 12.5px var(--mono);color:var(--muted)}.lc-open-title{margin:20px 0 6px;font:500 12.5px var(--mono);color:var(--accent)}.lc-open ul{list-style:none}.lc-open li{position:relative;padding:7px 0 7px 18px;border-top:1px solid var(--line);font-size:15px;line-height:1.4}.lc-open li::before{content:"";position:absolute;left:0;top:14px;width:8px;height:8px;border-radius:2px;background:var(--warn)}.lc-first li::before{background:var(--bad)}.lc-cta{width:100%;margin-top:22px}.lc-note{margin:14px 0 0;color:var(--muted);font-size:13px}.lc-reset{padding:0;border:0;background:none;color:var(--accent);font:inherit;text-decoration:underline;cursor:pointer}.lc-more{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px}.lc-more p{color:var(--muted)}.legal{max-width:760px;padding-block:clamp(40px,6vw,64px) var(--section)}.legal h2{margin:44px 0 14px;font-size:22px}.legal p,.legal li{color:var(--muted)}.legal strong{color:var(--text)}.legal ul{margin-bottom:1em;padding-left:22px}.legal li{margin-bottom:6px}.legal a{color:var(--accent)}.legal hr{margin:32px 0;border:0;border-top:1px solid var(--line)}.error-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:28px}.error-links a:not(.btn){color:var(--accent);font-weight:600}.site-footer{padding:56px 0 96px;border-top:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:15px}.footer-top{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;padding-bottom:40px}.footer-brand img{width:170px;margin-bottom:18px}.footer-brand p{max-width:26em}.footer-rating{display:flex;align-items:center;gap:12px;margin:0;font:400 13px var(--mono)}.footer-rating b{color:var(--text);font-weight:500}.footer-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.footer-h{margin-bottom:10px;font:500 12.5px var(--mono);letter-spacing:0;color:var(--muted);font-stretch:100%}.footer-cols a{display:block;padding:4px 0;color:var(--text);text-decoration:none}.footer-cols a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.footer-bottom{display:flex;justify-content:space-between;gap:16px;padding-top:22px;border-top:1px solid var(--line);font-size:14px}.footer-legal{display:flex;gap:20px}.footer-legal a{text-decoration:none}.footer-legal a:hover{color:var(--text);text-decoration:underline}.wa-btn,.to-top{position:fixed;bottom:24px;z-index:45;width:50px;height:50px;display:grid;place-items:center;border-radius:var(--r-lg);box-shadow:var(--shadow)}.wa-btn{left:24px;background:#25d366;color:#fff;text-decoration:none}.wa-btn:hover{background:#1ebe5b}.wa-btn .ico{width:26px;height:26px}.wa-tip{position:absolute;left:calc(100% + 10px);top:50%;padding:9px 12px;border-radius:var(--r-sm);background:var(--btn-bg);color:var(--btn-fg);font:600 14px/1 var(--sans);white-space:nowrap;opacity:0;visibility:hidden;transform:translateY(-50%);transition:opacity .15s,visibility .15s;pointer-events:none}.wa-btn:hover .wa-tip,.wa-btn:focus-visible .wa-tip{opacity:1;visibility:visible}.to-top{right:24px;padding:0;border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}.to-top.show{opacity:1;visibility:visible}.to-top:hover{border-color:var(--text)}.to-top .ico{width:20px;height:20px;stroke-width:2.2}.chat [hidden]{display:none!important}.has-chat .to-top{right:192px}.chat-launcher{position:fixed;right:24px;bottom:24px;z-index:46;display:inline-flex;align-items:center;justify-content:center;gap:10px;width:156px;height:50px;padding:0 18px 0 14px;border:0;border-radius:var(--r-lg);background:var(--btn-bg);color:var(--btn-fg);font:600 15px/1 var(--sans);cursor:pointer;box-shadow:var(--shadow)}.chat-launcher:hover,.chat.is-open .chat-launcher{background:var(--btn-hover)}.chat-launcher .ico{width:21px;height:21px}.chat-teaser{position:fixed;right:24px;bottom:86px;z-index:46;max-width:260px;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);color:var(--text);font-size:14px;line-height:1.45;cursor:pointer;box-shadow:var(--shadow)}.chat-panel{position:fixed;right:24px;bottom:86px;z-index:60;display:flex;flex-direction:column;width:390px;height:min(620px,calc(100vh - 120px));overflow:hidden;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);color:var(--text);box-shadow:0 30px 70px -24px rgba(1,48,63,.55);opacity:0;transform:translateY(10px);transition:opacity .2s,transform .2s}.chat-panel.is-shown{opacity:1;transform:none}.chat-head{display:flex;align-items:center;gap:12px;padding:14px 12px 14px 16px;background:var(--navy);color:#fff}.chat-avatar{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:var(--r-sm);background:rgba(255,255,255,.12);color:#fff}.chat-avatar .ico{width:20px;height:20px}.chat-head-text{flex:1;min-width:0}.chat-head h2{color:#fff;font-size:16px;line-height:1.2;font-stretch:100%;letter-spacing:0}.chat-head p{display:flex;align-items:center;gap:7px;margin:3px 0 0;color:var(--on-band-muted);font-size:12px}.pulse{flex:none;width:7px;height:7px;border-radius:50%;background:#3fbf7f}.chat-icon{flex:none;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--on-band-muted);cursor:pointer}.chat-icon:hover{background:rgba(255,255,255,.1);color:#fff}.chat-icon .ico{width:18px;height:18px}.chat-log{flex:1;display:flex;flex-direction:column;gap:10px;padding:16px;overflow-y:auto;background:var(--bg);overscroll-behavior:contain}.chat-msg{max-width:86%;padding:10px 13px;border-radius:var(--r-lg);font-size:14.5px;line-height:1.5;overflow-wrap:anywhere}.chat-msg p{margin:0}.chat-msg p + p,.chat-msg p + ul,.chat-msg ul + p{margin-top:8px}.chat-msg ul{margin:6px 0 0;padding-left:18px}.chat-msg li + li{margin-top:3px}.chat-msg a{color:var(--accent);font-weight:600}.chat-msg-assistant{align-self:flex-start;border:1px solid var(--line);border-bottom-left-radius:4px;background:var(--surface)}.chat-msg-user{align-self:flex-end;border-bottom-right-radius:4px;background:var(--btn-bg);color:var(--btn-fg);white-space:pre-wrap}.chat-msg-note{align-self:center;max-width:100%;background:var(--ok-bg);color:var(--ok-fg);font-size:13.5px;text-align:center}.chat-typing{display:inline-flex;gap:5px;padding:14px 15px}.chat-typing i{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:chat-dot 1.1s infinite ease-in-out}.chat-typing i:nth-child(2){animation-delay:.15s}.chat-typing i:nth-child(3){animation-delay:.3s}@keyframes chat-dot{0%,60%,100%{opacity:.3}30%{opacity:1}}.chat-card{align-self:flex-start;width:86%;padding:12px 14px;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:var(--r-lg);background:var(--surface);font-size:14px}.chat-card p{margin:0 0 10px;color:var(--muted);line-height:1.45}.chat-card b{display:block;color:var(--text)}.chat-card-btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border:0;border-radius:var(--r-sm);background:var(--btn-bg);color:var(--btn-fg);font:600 14px/1 var(--sans);text-decoration:none;cursor:pointer}.chat-card-btn:hover{background:var(--btn-hover)}.chat-card-btn:disabled{opacity:.6;cursor:default}.chat-lead label{display:block;margin-bottom:8px;color:var(--muted);font-size:12.5px;font-weight:600}.chat-lead input,.chat-lead textarea{display:block;width:100%;margin-top:4px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--field);color:var(--text);font:400 14px/1.4 var(--sans)}.chat-lead input:focus,.chat-lead textarea:focus{outline:2px solid var(--blue);outline-offset:0;border-color:transparent}.chat-lead textarea{resize:vertical}.chat-hp{position:absolute;left:-9999px;width:1px;height:1px}.chat-lead-error{margin:0 0 10px;padding:6px 9px;border-radius:var(--r-sm);background:var(--error-bg);color:var(--error-fg);font-size:13px}.chat-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 12px;background:var(--bg)}.chat-chips button{padding:7px 11px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font:500 13px/1.2 var(--sans);text-align:left;cursor:pointer}.chat-chips button:hover{border-color:var(--blue);color:var(--accent)}.chat-form{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--line);background:var(--surface)}.chat-form textarea{flex:1;max-height:120px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--field);color:var(--text);font:400 14.5px/1.4 var(--sans);resize:none}.chat-form textarea:focus{outline:2px solid var(--blue);outline-offset:0;border-color:transparent}.chat-form button{flex:none;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:var(--r-sm);background:var(--btn-bg);color:var(--btn-fg);cursor:pointer}.chat-form button:hover{background:var(--btn-hover)}.chat-form button .ico{width:19px;height:19px}.chat-form.is-busy button{opacity:.5;cursor:progress}.chat-foot{display:flex;gap:16px;padding:2px 16px 0;background:var(--surface);font-size:13px}.chat-foot a,.chat-foot button{padding:0;border:0;background:none;color:var(--accent);font:600 13px/1.6 var(--sans);text-decoration:none;cursor:pointer}.chat-foot a:hover,.chat-foot button:hover{text-decoration:underline}.chat-note{margin:0;padding:4px 16px 10px;background:var(--surface);color:var(--muted);font-size:11.5px}@media (max-width:1000px){.head-grid,.head,.project,.proof,.closer,.faq,.contact-grid,.book-grid,.article-grid,.lc-grid,.lc-more,.footer-top{grid-template-columns:minmax(0,1fr)}.head{gap:14px}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.case-cards,.site-grid,.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rating{padding-left:0;border-left:0}.aside,.lc-result,.faq>div:first-child h2{position:static}.article-grid{gap:40px}}@media (max-width:860px){.menu-btn{display:inline-grid}.nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gutter) 22px;border-bottom:1px solid var(--line);background:var(--surface)}.nav.is-open{display:flex}.nav a:not(.btn){padding:15px 0;border-bottom:1px solid var(--line);font-size:18px}.nav a[aria-current="page"]{border-bottom-color:var(--line);color:var(--accent)}.nav-cta{margin:18px 0 0}.cols-2,.included,.rules,.row{grid-template-columns:minmax(0,1fr)}.cols-2,.included{gap:32px}.post-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:620px){body{font-size:16px}.brand img{width:140px}.header-inner{gap:10px}.steps,.facts,.case-cards,.site-grid,.review-grid{grid-template-columns:minmax(0,1fr)}.footer-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet dl>div{grid-template-columns:minmax(0,1fr);gap:2px}.index{table-layout:auto}.index thead{display:none}.index tr{display:grid;padding:14px 0;border-bottom:1px solid var(--line)}.index td{width:auto!important;padding:2px 0;border:0}.founder{grid-template-columns:minmax(0,1fr)}.founder img{max-width:200px}.stack-table th{width:110px}.lc-how,.chips.lc-answers{margin-left:0}.footer-bottom{flex-direction:column}.wa-btn{left:16px;bottom:16px;width:46px;height:46px}.wa-tip{display:none}.to-top{right:16px;bottom:16px;width:46px;height:46px}.chat-launcher{right:16px;bottom:16px;width:46px;height:46px;padding:0}.chat-launcher-label{display:none}.has-chat .to-top{right:72px}.chat-panel{inset:0;width:auto;height:100%;height:100dvh;border:0;border-radius:0}.chat.is-open .chat-launcher{visibility:hidden}.site-footer{padding-bottom:84px}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}