@font-face {
  font-family:Inter;
  src:url('/assets/inter.woff2') format('woff2');
  font-display:swap;
  font-weight:100 900;
}
:root {
  font-family:Inter,system-ui,sans-serif;
  color:#171b24;
  background:#fff;
  font-synthesis:none;
  scroll-behavior:smooth;
  --blue:#2454d6;
  --yellow:#ffd43b;
  --muted:#657080;
  --line:#e7e9ee;
}
* { box-sizing:border-box; }
body { margin:0; }
a { color:inherit; text-decoration:none; }
a:hover { color:var(--blue); }
a:focus-visible,summary:focus-visible { outline:3px solid var(--blue); outline-offset:5px; }
p { line-height:1.65; color:var(--muted); }
h1,h2,h3,p,figure,blockquote { margin:0; }
h1,h2 { font-weight:550; letter-spacing:-.045em; line-height:1.1; }
h1 { font-size:clamp(40px,4.7vw,60px); }
h2 { font-size:clamp(32px,3.7vw,48px); }
h3 { font-size:18px; font-weight:550; line-height:1.4; }
code { font:13px/1.7 ui-monospace,SFMono-Regular,monospace; overflow-wrap:anywhere; }
pre { margin:20px 0 0; overflow-x:auto; padding:15px; background:#f4f6fa; border-radius:8px; }
pre code { overflow-wrap:normal; }
.frame { width:min(1152px,calc(100% - 48px)); margin-inline:auto; }
.content { width:min(1000px,calc(100% - 64px)); margin-inline:auto; }
.site-header { border-bottom:1px solid var(--line); }
.nav { min-height:80px; padding:20px 48px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:32px; border-inline:1px solid var(--line); }
.wordmark { display:inline-flex; align-items:center; gap:8px; font-size:25px; letter-spacing:-1px; font-weight:600; }
.bolt { color:#e4b000; font-size:44px; line-height:1; }
nav { display:flex; gap:26px; color:var(--muted); font-size:14px; }
.nav>.button { justify-self:end; }
.button { display:inline-flex; align-items:center; justify-content:center; background:var(--blue); color:white; border:1px solid transparent; border-radius:999px; padding:10px 18px; font-size:14px; font-weight:500; line-height:1.25; }
.button:hover { background:#1942b3; color:white; }
.button.small { font-size:12px; padding:9px 14px; }
.button.secondary { background:#f7f8fa; color:#242b38; border-color:var(--line); }
.button.secondary:hover { background:#edf1fa; }
.hero { border-inline:1px solid var(--line); padding-top:60px; }
.hero-copy { text-align:center; padding:0 36px 78px; }
.badge { display:inline-flex; gap:8px; align-items:center; background:#fff4c4; color:#665008; border:1px solid #f5de7b; padding:6px 12px; border-radius:999px; font-size:10px; font-weight:650; letter-spacing:1.2px; margin-bottom:24px; }
.badge span { font-size:18px; line-height:1; }
.hero h1 { max-width:900px; margin-inline:auto; }
.accent { color:var(--blue); }
.lead { max-width:720px; font-size:18px; margin:30px auto; }
.actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
.fine { font-size:13px; }
.hero .fine { margin-top:18px; }
.hero-image { margin:0 48px; border:1px solid var(--line); position:relative; }
.hero-image:before,.hero-image:after { content:''; width:7px; height:7px; background:var(--yellow); position:absolute; top:-4px; }
.hero-image:before { left:-4px; }.hero-image:after { right:-4px; }
.hero-image img { display:block; width:100%; height:auto; }
.section { padding-top:140px; }
.section-heading { max-width:620px; margin:0 auto 64px; text-align:center; }
.section-heading p { margin-top:20px; }
.eyebrow { color:#806500; font-size:11px; font-weight:650; letter-spacing:1.6px; margin-bottom:16px; }
.bento { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:auto auto auto; gap:10px; }
.card { background:#f7f8fa; border:1px solid #eff0f3; border-radius:22px; padding:32px; min-width:0; }
.card p { margin-top:12px; font-size:15px; }
.icon { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; background:var(--yellow); color:#514000; border-radius:11px; font:24px/1 ui-monospace,monospace; margin-bottom:18px; }
.feature-main { grid-column:1/3; grid-row:1/3; }
.feature-side { grid-column:3; grid-row:1; }
.feature-tall { grid-column:3; grid-row:2/4; }
.feature-bottom { grid-row:3; }
.command-demo { margin-top:60px; padding:30px 15px; text-align:center; border:1px solid #dee5f1; border-radius:16px; background:white; }
.command-demo code { font-size:19px; color:var(--blue); }
.prompt-sign { color:#998000; margin-right:10px; }
.flow { display:flex; gap:14px; justify-content:center; align-items:center; margin-top:30px; font-size:12px; }
.flow span { padding:10px 16px; border:1px solid var(--line); border-radius:8px; }
.flow .last { background:#fff2b5; border-color:#f4d65c; }
.flow b { color:#9aa4b4; }
.wireless { display:flex; gap:10px; align-items:center; margin-top:32px; color:var(--blue); font-size:13px; }
.wireless span { padding:9px; background:#e9efff; border-radius:8px; }.wireless i { color:#ba9200; }
.inline-command { display:block; background:white; padding:14px; margin-top:28px; border-radius:8px; color:var(--blue); }
.request-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding-block:130px 90px; }
.quote-mark { font-size:60px; line-height:1; color:#d5aa00; }
blockquote { font-size:24px; line-height:1.5; margin:20px 0 34px; letter-spacing:-.4px; }
.request-grid .fine { letter-spacing:1px; font-size:11px; }
.story { display:grid; grid-template-columns:1fr 1fr; gap:100px; padding-block:80px 0; }
.story h2 { font-size:36px; }
.muted { color:var(--muted); }
.story p+p { margin-top:24px; }
.workflow-art { display:flex; justify-content:center; align-items:center; gap:20px; margin-bottom:54px; }
.tile { display:flex; align-items:center; justify-content:center; width:75px; height:75px; border:1px solid var(--line); border-radius:16px; font:32px monospace; background:#f8f9fc; color:var(--blue); transform:rotate(-8deg); }
.tile.main-tile { width:90px; height:90px; color:#665000; background:var(--yellow); font-size:64px; transform:rotate(5deg); }
.connector { color:#b9c5d8; letter-spacing:5px; }
.steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; }
.step-icon { width:56px; height:56px; display:flex; align-items:center; justify-content:center; border-radius:12px; background:#fff0aa; color:#705900; font:22px ui-monospace,monospace; margin-bottom:32px; }
.steps p { margin-top:14px; font-size:15px; }.steps article { min-width:0; }
.example-note { margin-top:26px; }
.setup { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding-top:150px; }
.setup h2 { font-size:36px; }.setup p { margin-top:20px; }
.faqs { margin-top:48px; }
details { border-bottom:1px solid var(--line); padding:20px 0; }
summary { cursor:pointer; list-style:none; font-size:14px; display:flex; justify-content:space-between; gap:20px; }
summary::-webkit-details-marker { display:none; }
summary:after { content:'+'; color:var(--blue); }details[open] summary:after { content:'−'; }
details p { font-size:14px; }
.setup-card { background:#f7f8fa; border:1px solid var(--line); padding:34px; border-radius:14px; }
.setup-card h3 { font-size:30px; letter-spacing:-1px; }.setup-card .button { display:flex; margin-block:28px; }
.setup-card { min-width:0; }.install { margin-top:28px; }.install h4 { font-size:14px; font-weight:550; }.install pre { margin-top:12px; background:white; border:1px solid var(--line); }.install code { color:var(--blue); white-space:pre-wrap; overflow-wrap:anywhere; }.setup-card .install .fine { margin-top:12px; color:var(--muted); }
ul { list-style:none; padding:0; margin:0; }li { font-size:14px; margin-top:17px; }li:before { content:'✓'; color:var(--blue); margin-right:12px; }
.closing { margin-block:140px 90px; border:1px solid #dbe5ff; border-radius:16px; text-align:center; padding:70px 30px; background:radial-gradient(circle at 15% 10%,#fff4bc 0,transparent 36%),radial-gradient(circle at 90% 90%,#dfe9ff 0,transparent 45%),#f7f9ff; }
.closing h2 { font-size:36px; }.closing p:not(.eyebrow) { margin:22px auto; }.closing .eyebrow { color:#806500; }
footer { border-top:1px solid var(--line); padding:70px 0 40px; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr; gap:48px; }
.footer-grid h3 { font-size:14px; margin-bottom:24px; }.footer-grid p { font-size:14px; margin:22px 0 14px; max-width:270px; }.footer-grid a:not(.wordmark) { display:block; font-size:14px; margin-top:15px; color:var(--muted); }.footer-grid a:hover { color:var(--blue); }
.copyright { font-size:12px; margin-top:65px; }
.skip { position:absolute; top:-100px; left:20px; padding:12px; background:white; z-index:3; }.skip:focus { top:12px; }
@media(max-width:800px) {
 .frame { width:calc(100% - 28px); }.content { width:calc(100% - 40px); }
 .nav { padding:18px 16px; gap:15px; grid-template-columns:1fr auto; }.nav nav { grid-column:1/-1; grid-row:2; justify-content:center; gap:24px; font-size:12px; }.wordmark { font-size:22px; }
 .hero { padding-top:42px; }.hero-copy { padding:0 15px 48px; }.hero h1 br { display:none; }.lead { font-size:16px; margin-block:24px; }.hero-image { margin:0 14px; }
 .section { padding-top:80px; }.section-heading { margin-bottom:35px; }
 .bento { grid-template-columns:1fr 1fr; grid-template-rows:auto; }.card { padding:23px; }.feature-main { grid-column:1/-1; grid-row:auto; }.feature-side,.feature-bottom,.feature-tall { grid-column:auto; grid-row:auto; }.command-demo { margin-top:30px; padding-inline:8px; }.command-demo code { font-size:15px; }.flow { gap:8px; }.flow span { padding:8px 10px; }.wireless { flex-wrap:wrap; }
 .request-grid { padding-block:70px 30px; gap:30px; }blockquote { font-size:20px; }
 .story { grid-template-columns:1fr; gap:25px; padding-top:45px; }.story h2 { font-size:32px; }
 .steps { grid-template-columns:1fr; gap:35px; }.step-icon { margin-bottom:16px; }.workflow-art { gap:10px; }.tile { width:58px; height:58px; }.tile.main-tile { width:75px; height:75px; }
 .setup { grid-template-columns:1fr; gap:35px; padding-top:80px; }.setup h2 { font-size:32px; }.faqs { margin-top:25px; }.setup-card { padding:28px; }
 .closing { margin-block:75px 60px; padding:45px 22px; }.closing h2 { font-size:30px; }
 .footer-grid { grid-template-columns:repeat(2,1fr); gap:25px; }.footer-brand { grid-column:1/-1; }.copyright { margin-top:40px; }
}
@media(max-width:440px) { .bento,.request-grid { grid-template-columns:1fr; }.footer-grid { grid-template-columns:1fr 1fr; }.flow { gap:6px; } }
@media(prefers-reduced-motion:reduce) { :root { scroll-behavior:auto; } }
