:root{--navy:#10183D;--ink:#121A3E;--body:#3B4256;--muted:#5A6178;--line:#E3E7EF;--alt:#F3F5F9;--accent:#22B8E6;--link:#0B6E99;--deep:#0B1130}
*{box-sizing:border-box}
body{margin:0;background:#FFFFFF;color:var(--ink);font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:16px;line-height:1.6}
a{color:var(--link)}a:hover{color:#08506F}
img{max-width:100%}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.narrow{max-width:860px}
.top{background:#FFFFFF;border-bottom:1px solid var(--line)}
.top-row{min-height:72px;display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px}
.brand{display:flex;align-items:baseline;gap:10px;text-decoration:none;color:var(--ink)}
.brand-name{font-weight:700;font-size:23px;letter-spacing:.12em;-webkit-text-stroke:.6px var(--ink)}
.brand-by{font-size:13px;color:var(--muted)}
.mainnav{display:flex;flex-wrap:wrap;gap:4px 24px;flex:1 1 420px;font-size:15px;font-weight:500}
.mainnav a{color:var(--ink);text-decoration:none;padding:8px 0}
.mainnav a:hover{color:var(--link)}
.top-actions{display:flex;align-items:center;gap:12px}
.signin{color:var(--ink);text-decoration:none;font-size:15px;font-weight:500;padding:12px 8px}
.btn{display:inline-block;text-decoration:none;font-size:15px;font-weight:600;padding:13px 22px;border-radius:4px}
.btn-dark{background:var(--ink);color:#FFFFFF}.btn-dark:hover{color:#FFFFFF;background:#1F2A5C}
.btn-accent{background:var(--accent);color:var(--navy);font-weight:700}.btn-accent:hover{color:var(--navy)}
.btn-line{border:1.5px solid var(--ink);color:var(--ink);padding:12px 20px}
.btn-line-light{border:1.5px solid #4A5584;color:#FFFFFF;padding:12px 20px}.btn-line-light:hover{color:#FFFFFF}
.btns{display:flex;flex-wrap:wrap;gap:14px}
.hero{background:var(--navy);color:#FFFFFF}
.hero .wrap{padding-top:80px;padding-bottom:80px}
.hero h1{margin:0 0 20px;font-size:52px;line-height:1.08;font-weight:700;letter-spacing:-.02em;max-width:900px}
.hero p.lede{color:#C9D0E3;max-width:760px}
.crumb{margin:0 0 14px;font-size:14px}
.hero .crumb a{color:#9FD8EE}
.lede{font-size:19px;line-height:1.6;color:var(--body);margin:0 0 32px}
.sec{padding:88px 0}
.sec-alt{background:var(--alt)}
.eyebrow{margin:0 0 12px;font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--link)}
h2.h2{margin:0 0 20px;font-size:36px;line-height:1.15;font-weight:700;max-width:860px}
.h1-sm{font-size:40px;line-height:1.15;margin:0 0 16px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:32px}
.card{background:#FFFFFF;border:1px solid var(--line);border-radius:6px;padding:30px}
.card h3{margin:0 0 10px;font-size:20px;font-weight:600}
.card p{margin:0;color:var(--body)}
a.card{display:block;text-decoration:none;color:var(--ink)}a.card:hover{border-color:var(--link)}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.tiles a{background:#FFFFFF;padding:28px;text-decoration:none;color:var(--ink)}
.tiles a:hover{background:#F8FAFD}
.tiles b{display:block;font-size:18px;font-weight:600;margin-bottom:8px}
.tiles span{color:var(--body);font-size:15px}
.steps{display:flex;flex-wrap:wrap;gap:16px}
.step{flex:1 1 200px;border:1px solid var(--line);border-radius:6px;padding:24px;background:#FFFFFF}
.step .n{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--muted);margin-bottom:8px}
.step b{display:block;font-size:18px;margin-bottom:6px}
.step p{margin:0;color:var(--body);font-size:15px}
.step.bad{border:2px solid #B42318;background:#FEF3F2}.step.bad .n{color:#B42318}
.step.good{border:2px solid #0E7A4F;background:#EEF8F3}.step.good .n{color:#0E7A4F}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}
.fact{border-left:3px solid var(--accent);padding-left:18px}
.fact b{display:block;font-size:28px}
.fact span{color:var(--muted);font-size:15px}
.split{display:flex;flex-wrap:wrap;gap:48px;align-items:center}
.split>*{flex:1 1 420px;min-width:0}
.photo{width:100%;height:360px;object-fit:cover;border-radius:6px;display:block}
.chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.chips figure{margin:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#FFFFFF}
.chips img{width:100%;height:200px;object-fit:cover;display:block}
.chips figcaption{padding:16px 20px;font-size:15px}
.chips figcaption b{display:block}
ul.check{list-style:none;padding:0;margin:0}
ul.check li{padding:10px 0 10px 30px;border-bottom:1px solid var(--line);position:relative;color:var(--body)}
ul.check li::before{content:"";position:absolute;left:4px;top:18px;width:12px;height:7px;border-left:2px solid var(--link);border-bottom:2px solid var(--link);transform:rotate(-45deg)}
.tbl{overflow-x:auto;background:#FFFFFF;border:1px solid var(--line);border-radius:6px;margin:16px 0 24px}
.tbl table{width:100%;min-width:640px;border-collapse:collapse;font-size:15px}
.tbl th{text-align:left;padding:14px 18px;border-bottom:2px solid var(--ink);font-weight:600;vertical-align:top}
.tbl td{padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--body)}
.tbl tr:last-child td{border-bottom:0}
.tbl tbody th{border-bottom:1px solid var(--line)}
pre.code{background:var(--deep);color:#D7DCEB;border-radius:6px;padding:20px 22px;overflow-x:auto;font-family:'IBM Plex Mono',monospace;font-size:13.5px;line-height:1.65;margin:16px 0 24px}
code{font-family:'IBM Plex Mono',monospace;font-size:.92em;background:#EEF1F7;padding:1px 5px;border-radius:3px;color:#1C2550}
pre code{background:none;padding:0;color:inherit;font-size:inherit}
.cta{background:var(--navy);color:#FFFFFF}
.cta .wrap{padding-top:80px;padding-bottom:80px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px}
.cta h2{margin:0 0 10px;font-size:34px;line-height:1.2}
.cta p{margin:0;color:#C9D0E3}
.docs{display:flex;flex-wrap:wrap;gap:40px;padding-top:40px;padding-bottom:80px}
.dnav{flex:1 1 220px;max-width:280px;font-size:15px}
.dnav a{display:block;padding:6px 10px;border-radius:4px;color:var(--body);text-decoration:none}
.dnav a:hover{background:var(--alt);color:var(--ink)}
.dnav a[aria-current]{background:#E6F4FA;color:var(--ink);font-weight:600}
.dnav-h{margin:22px 0 6px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dnav-h:first-child{margin-top:0}
.dcontent{flex:999 1 560px;min-width:0}
.dcontent h1{font-size:36px;line-height:1.2;margin:0 0 20px}
.dcontent h2{font-size:26px;margin:40px 0 12px;padding-top:12px;border-top:1px solid var(--line)}
.dcontent h3{font-size:20px;margin:32px 0 10px}
.dcontent h4{font-size:17px;margin:24px 0 8px}
.dcontent p,.dcontent li{color:var(--body)}
.dcontent .card h3{margin:0 0 10px}
.card-focus{border:2px solid var(--link);box-shadow:0 0 0 4px rgba(11,110,153,.12)}
.card-focus h3::before{content:"Start here";display:block;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--link);margin-bottom:8px}
.note{border:1px solid #B7DFF0;background:#F0F9FD;border-radius:6px;padding:16px 20px;margin:16px 0 24px;color:var(--body)}
form.demo{display:grid;gap:18px;max-width:640px}
form.demo label{display:block;font-weight:600;font-size:15px;margin-bottom:6px}
form.demo input,form.demo select,form.demo textarea{width:100%;font:inherit;padding:12px 14px;border:1px solid #C6CCD9;border-radius:4px;background:#FFFFFF;color:var(--ink)}
form.demo textarea{min-height:130px}
form.demo button{justify-self:start;border:0;cursor:pointer;font:inherit}
.video{width:100%;border-radius:6px;background:#000;display:block}
.foot{background:var(--deep);color:#AEB6CF}
.foot-grid{padding-top:56px;padding-bottom:40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px;font-size:15px}
.foot-brand{color:#FFFFFF;font-weight:700;font-size:20px;letter-spacing:.12em;-webkit-text-stroke:.5px #FFFFFF;margin-bottom:10px}
.foot p{margin:0}
.foot-col{display:flex;flex-direction:column;gap:10px}
.foot-col a{color:#AEB6CF;text-decoration:none}.foot-col a:hover{color:#FFFFFF}
.foot-h{color:#FFFFFF;font-weight:600}
.foot-legal{padding-top:20px;padding-bottom:32px;border-top:1px solid #222B52;font-size:14px}
.mock{margin:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#FFFFFF;box-shadow:0 8px 30px rgba(16,24,61,.08);font-size:12px;color:var(--ink)}
.mock-bar{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#F3F5F9;border-bottom:1px solid var(--line)}
.mock-bar span{width:9px;height:9px;border-radius:50%;background:#D5DAE5}
.mock-bar i{font-style:normal;margin-left:10px;background:#FFFFFF;border:1px solid var(--line);border-radius:4px;padding:2px 10px;color:var(--muted);font-size:11px;flex:1}
.mock-top{display:flex;align-items:center;gap:12px;padding:8px 14px;border-bottom:1px solid var(--line)}
.mock-top b{font-size:13px}.mock-top em{font-style:normal;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:1px 6px}
.mock-top u{text-decoration:none;font-weight:600;border-bottom:2px solid var(--ink);padding-bottom:2px}
.mock-user{margin-left:auto;width:20px;height:20px;border-radius:50%;background:var(--ink);color:#FFFFFF;display:inline-flex;align-items:center;justify-content:center;font-size:10px}
.mock-main{display:flex;min-height:280px}
.mock-side{width:104px;flex:none;border-right:1px solid var(--line);padding:10px 0;background:#FAFBFD;font-size:11px}
.mock-side a{display:block;padding:5px 12px;color:var(--body);white-space:nowrap}
.mock-side a.on{background:#E6F4FA;color:var(--ink);font-weight:600;border-right:2px solid var(--link)}
.mock-content{flex:1;padding:14px 16px;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.mock-content::-webkit-scrollbar{height:6px}.mock-content::-webkit-scrollbar-thumb{background:#C6CCD9;border-radius:3px}
.mock-content h4,.mock-row{white-space:nowrap}
.mock-tbl,.tiles-m,.mock-sum,.status-cards{min-width:560px}
.mock-tbl th,.mock-tbl td{white-space:nowrap}
.mock-tbl td{max-width:260px;overflow:hidden;text-overflow:ellipsis}
.mock-content h4{margin:0 0 10px;font-size:14px;display:flex;align-items:center;gap:12px}
.tiles-m{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.tile{border:1px solid var(--line);border-radius:6px;padding:10px 12px}
.tile b{display:block;font-size:12px}.tile span{color:var(--muted);font-size:11px}
.tile.off{opacity:.45}
.mock-row{margin-top:12px;color:var(--body);font-size:11px}
.mock-row u{text-decoration:none;color:var(--link)}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}.dot.g{background:#0E7A4F}
.mock-sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}
.mock-sum>div{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:6px;padding:8px 10px}
.mock-sum b{display:block;font-size:16px}.mock-sum span{color:var(--muted);font-size:11px}
.donut{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none}
.donut span{width:24px;height:24px;border-radius:50%;background:#FFFFFF}
.mock-tbl{width:100%;border-collapse:collapse;font-size:10.5px}
.mock-tbl th{text-align:left;color:var(--muted);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--line)}
.mock-tbl td{padding:6px 8px;border-bottom:1px solid #EEF1F6;vertical-align:middle}
.mock-tbl tr.open td{background:#F8FAFD}
.mock-tbl code{font-size:10.5px;background:none;padding:0}
.pill{font-style:normal;border:1px solid var(--ink);border-radius:3px;padding:2px 7px;font-size:10.5px;white-space:nowrap}
.pill.ok{border-color:#9ED5BA;background:#EEF8F3;color:#0E7A4F}
.status-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:6px 0}
.status-cards div{border:1px solid var(--line);border-radius:6px;padding:8px 10px}
.status-cards span{display:block;color:var(--muted);font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}
.status-cards b{font-size:11.5px;white-space:nowrap}
.switch{font-style:normal;font-weight:500;font-size:11px;color:var(--muted);margin-left:auto;display:inline-flex;align-items:center;gap:6px}
.switch span{width:26px;height:14px;border-radius:7px;background:#C6CCD9;position:relative}
.switch span::after{content:"";position:absolute;left:2px;top:2px;width:10px;height:10px;border-radius:50%;background:#FFFFFF}
.mock figcaption{padding:12px 16px;font-size:14px;color:var(--body);border-top:1px solid var(--line)}
.mock-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(460px,1fr));gap:32px}
.hero-video{width:100%;aspect-ratio:16/9;border-radius:6px;background:#000;display:block}
@media (max-width:640px){.mock-grid{grid-template-columns:1fr}.mock-side{display:none}.tiles-m,.mock-sum,.status-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:38px}h2.h2{font-size:28px}.sec{padding:64px 0}.grid-2{grid-template-columns:1fr}}
