:root{--film:#e6eee3;--panel:#f4f9f2;--ink:#13201c;--mut:#445550;--g:#1b6a4a;--g2:#124a33;--slab:#0e1a16;--verm:#d99f2b;--vt:#a37214;--hair:rgba(19,32,28,.22);--fd:"Geologica",system-ui,sans-serif;--fb:"Commissioner",system-ui,sans-serif;--fm:"Red Hat Mono",ui-monospace,Menlo,monospace}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:104px;background:var(--film)}
body{margin:0;background:var(--film) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='1200' viewBox='0 0 1200 1200' fill='none' stroke='%231b6a22'%3E%3Cpath stroke-opacity='.17' d='M0 377q20-14 29-26q10-11 13-21q4-10 4-30q1-20-3-31q-3-11-13-24q-10-12-20-16l-10-4M1200 225q-20 3-30 9q-10 6-20 16q-10 10-20 25q-10 16-16 30q-5 15-6 35q0 20 8 30q8 10 26 14q18 4 34 0q17-4 20-6l4-1M0 477q20-3 40-7q20-4 37-7q17-3 30-6q13-2 33-4q20-1 40 0q20 1 40 3q20 3 40 0q20-3 39-10q19-6 30-11q11-4 24-10q14-5 30-11q17-6 31-10q15-4 30-8q16-3 36-4q20 0 31 4q11 4 24 14q13 10 22 20q9 10 17 20q8 10 17 20q9 10 29 27q20 18 30 24q10 6 29 12q19 7 30 8q11 1 21 0q11-1 30-7q20-6 30-11q10-5 22-14q13-9 22-19q10-10 13-30q4-20-6-30q-9-10-24-20q-14-10-26-16q-11-5-21-10q-10-5-30-12q-20-7-30-10q-10-3-30-7q-20-4-40-8q-20-3-31-5q-10-2-30-10q-19-7-29-19q-10-11-16-22q-6-11-10-21q-4-10-11-30q-6-20-10-36q-3-16-6-30q-3-14-7-34q-4-20-7-36q-3-15-8-30q-5-14-10-26q-5-11-25-18q-20-7-30 2q-10 10-20 28q-10 19-14 29q-4 11-10 25q-6 15-12 30q-6 16-11 26q-4 10-14 28q-9 18-17 30q-8 12-17 22q-8 10-21 20q-13 10-24 13q-10 4-24 0q-14-3-26-13q-12-10-20-20q-8-10-15-20q-7-10-16-26q-9-15-18-30q-8-14-14-24q-6-10-13-20q-6-10-15-22q-9-11-20-20q-10-8-30-11q-19-3-29 1l-10 4M1200 82q-20 13-30 22q-10 9-20 20q-10 11-20 23q-10 13-18 23q-7 10-14 20q-7 10-14 20q-7 10-16 23q-8 13-18 28q-10 16-18 27q-7 12-14 22q-6 10-12 20q-6 10-16 26q-10 17-18 30q-7 14-8 34q0 20 11 30q12 10 28 17q17 7 28 10q11 3 30 5q19 3 39 3q20 1 40-1q20-1 31-3q12-1 20-3l9-1M107 0q13 20 18 30q5 10 10 20q5 10 15 28q10 18 18 30q8 12 17 22q10 10 22 17q13 7 33 1q20-6 29-17q10-11 15-21q6-10 11-20q5-10 13-30q8-20 12-30q4-10 8-20l4-10M514 0q6 20 7 30q2 10 5 30q4 20 7 40q4 20 6 30q3 10 8 30q5 20 9 30q4 10 14 28q10 19 20 30q10 12 20 20q10 8 20 14q10 6 23 12q14 6 30 12q17 6 28 10q12 4 30 10q19 7 29 10q11 4 30 10q20 7 38 10q19 4 30 5q12 1 22-1q10-1 30-10q20-9 30-17q10-8 20-18q10-10 20-22q10-12 18-23q8-10 15-20q8-10 15-20q7-10 14-21q8-11 18-26q10-15 19-29q9-14 16-24q7-10 13-20q7-10 14-21q8-10 18-24q10-13 20-25q10-12 20-22l10-10M1200 514q-20 2-40 4q-20 2-30 2q-10 1-30 2q-20 2-40 2q-20 0-40 0q-20 0-40 0q-20 0-40 2q-20 3-37 8q-17 6-30 10q-13 5-26 10q-12 6-30 12q-17 7-29 10q-12 4-30 7q-18 3-38 3q-20 0-35-3q-15-3-30-9q-15-5-25-11q-10-5-24-14q-13-9-27-19q-14-10-27-19q-12-9-22-15q-10-6-24-11q-14-5-30-8q-16-2-35 0q-18 3-30 6q-11 4-25 10q-14 7-30 16q-16 10-26 16q-10 6-20 12q-10 7-26 15q-15 8-30 12q-14 4-34 0q-20-4-30-9q-10-5-20-11q-10-5-30-14q-20-8-30-11q-10-3-30-5q-20-2-40-2q-20 1-30 1l-10 1M514 1200q-6-20-10-30q-4-10-14-24q-10-14-20-22q-10-7-30-10q-20-3-33 1q-12 5-25 15q-12 10-20 20q-8 10-15 22q-7 12-11 20l-4 8M107 1200q-7-9-17-17q-10-7-30-5q-20 2-30 7q-10 6-15 10l-5 5M553 0q3 20 5 31q2 12 5 30q3 19 7 39q4 20 7 30q3 10 11 30q8 20 13 30q6 10 14 20q8 10 18 20q11 10 26 20q15 10 28 16q13 7 23 11q10 5 30 12q20 7 30 10q10 4 30 9q20 5 40 7q20 3 40 0q20-2 35-9q15-6 29-16q15-10 25-20q11-10 20-20q9-10 17-20q8-10 15-20q7-10 14-20q7-10 16-24q9-14 18-30q10-16 16-26q6-10 11-20q6-10 15-26q9-16 17-30q8-14 14-24l6-10M1200 549q-20 1-40 2q-20 1-40 3q-20 2-38 4q-17 2-30 3q-12 2-32 4q-20 2-40 4q-20 3-40 7q-20 4-30 6q-10 3-30 9q-20 6-30 9q-10 3-30 8q-20 6-34 9q-13 3-30 5q-16 3-36 3q-20 0-35-3q-14-2-30-7q-15-4-27-10q-12-5-30-15q-18-10-28-16q-10-6-20-12q-10-6-28-14q-17-8-30-12q-12-3-32-3q-20 1-32 4q-12 3-30 11q-18 9-28 16q-10 7-20 14q-10 8-20 17q-10 9-20 18q-10 10-20 19q-10 9-22 18q-12 10-30 16q-18 7-30 0q-12-6-22-16q-10-10-20-20q-9-10-19-20q-9-10-22-20q-12-10-29-19q-16-9-26-12q-10-3-30-6q-20-3-30-4l-10 0M553 1200q-4-20-9-37q-4-17-9-30q-5-13-10-23q-5-10-15-23q-10-13-20-21q-10-7-30-15q-20-8-40-9q-20 0-40 3q-20 3-40 9q-19 6-30 10q-10 4-30 7q-20 3-30-9q-10-11-17-27q-6-15-10-25q-3-10-13-29q-10-18-20-25q-10-6-24-1q-14 5-27 15q-12 10-22 20q-10 10-20 20q-10 10-19 20q-9 10-19 20q-9 10-18 20q-9 10-17 20q-8 10-16 20l-8 10M1200 1120q0 0-10 14q-10 14-20 29q-10 16-16 26l-6 11M613 0q3 20 5 33q2 13 5 30q4 17 10 36q7 19 12 30q5 11 11 21q7 10 15 20q9 10 21 20q12 10 28 20q17 10 28 15q12 5 26 10q15 5 30 8q16 4 36 5q20 2 40-3q20-4 30-9q10-4 20-11q10-6 21-16q11-9 20-19q9-10 19-24q10-13 20-29q10-16 15-27q6-10 11-20q5-10 13-30q9-20 12-30q4-10 7-20l4-10M0 954q10-14 17-24q8-10 15-22q8-12 18-30q10-18 14-28q5-10 10-27q6-16 9-30q3-13 3-33q1-20-3-39q-3-18-8-30q-5-11-12-21q-7-10-19-20q-12-10-28-17l-16-7M1200 626q-20-4-40-5q-20 0-40 2q-20 2-40 6q-20 4-36 7q-15 4-30 7q-14 4-34 9q-20 6-30 8q-10 2-30 7q-20 5-40 9q-20 4-30 5q-10 2-30 5q-20 4-40 6q-20 3-40 4q-20 2-40 1q-20 0-40-4q-20-3-37-8q-16-5-30-11q-13-5-23-10q-10-4-30-13q-20-8-30-11q-10-3-30-4q-20-1-31 1q-10 3-27 13q-17 10-27 20q-10 10-17 20q-7 10-13 20q-5 11-12 30q-6 20-8 40q-2 20 1 40q3 20 8 33q6 14 16 27q10 13 20 21q10 8 20 13q11 6 30 14q20 8 30 12q10 5 23 12q14 8 27 18q13 10 22 20q9 10 16 20q7 10 14 25q8 16 13 30q5 15 10 34q5 20 7 30q2 11 5 31q3 20 4 30l2 10M1200 954q-5 6-13 16q-7 10-17 23q-10 13-20 27q-10 15-18 27q-7 13-12 23q-5 10-13 28q-7 19-11 30q-4 12-10 30q-6 18-10 30l-4 12M641 0q3 20 7 40q5 20 8 32q4 13 12 30q8 18 14 28q7 10 16 20q9 10 21 20q13 10 27 18q14 8 24 12q10 4 30 9q20 6 40 6q20 1 40-4q20-5 30-10q10-5 20-13q11-8 21-18q10-10 19-23q10-12 20-29q10-17 15-28q5-10 10-22q5-11 11-30q6-18 9-28l3-10M0 876q9-16 14-26q6-10 13-30q7-20 9-40q3-20-1-40q-3-20-9-31q-6-11-16-21l-10-9M1200 679q-20-10-40-13q-20-3-40-2q-20 2-40 7q-20 5-30 8q-10 3-30 9q-20 7-30 10q-10 3-30 9q-20 6-40 9q-19 4-30 5q-10 2-30 4q-20 3-40 5q-20 2-40 3q-20 2-40 3q-20 2-40 2q-20 1-40 0q-20-1-40-5q-20-4-33-9q-13-4-30-10q-17-6-29-10q-11-4-30-6q-18-2-28 0q-10 2-24 12q-14 10-21 20q-7 10-12 30q-5 20-1 40q4 20 10 30q6 10 16 20q11 10 26 19q16 10 26 15q10 6 20 12q10 6 21 15q12 9 21 19q10 10 19 22q9 12 18 30q10 18 14 28q4 10 10 30q7 20 9 30q2 10 5 30q4 20 6 40q3 20 5 35q2 15 2 20l1 5M1200 876q-3 4-12 16q-8 12-18 24q-10 12-20 23q-10 12-20 23q-10 12-20 25q-10 13-16 23q-6 10-11 20q-5 10-12 30q-7 20-10 30q-2 10-6 30q-4 20-8 40q-4 20-7 30l-2 10M672 0q3 20 5 31q3 12 9 30q7 19 12 29q5 10 13 22q9 12 19 22q10 10 22 18q12 8 30 15q18 8 28 10q10 3 30 3q20 1 30-2q10-2 26-10q17-8 29-18q12-10 20-20q8-10 14-20q7-10 14-24q7-13 13-30q6-16 10-33q4-16 5-20l1-3M1002 1200q2-20 3-40q2-20 2-40q1-20 0-40q0-20 1-40q1-20 5-40q5-20 10-30q5-10 13-20q8-10 20-20q12-10 26-20q14-10 26-20q12-9 22-19q10-10 17-21q8-10 13-20q6-10 11-30q5-20-1-40q-6-20-18-27q-12-7-32-8q-20-1-40 5q-20 7-30 11q-10 5-24 12q-14 7-30 15q-16 8-26 11q-10 4-30 7q-20 3-40 2q-20-1-40-3q-20-2-40-3q-20 0-40 1q-20 1-40 3q-20 2-40 5q-20 4-32 6q-12 3-30 9q-18 7-28 16q-10 10-12 24q-1 14 2 24q3 10 10 30q8 20 11 30q4 10 10 30q7 20 10 30q3 10 7 30q5 20 8 40q3 20 4 30q1 10 3 30q2 20 4 40q2 20 3 30l2 10M758 0q2 11 8 25q6 15 13 25q8 10 24 20q16 10 26 11q11 1 21-2q10-2 21-11q11-8 20-27q9-19 10-30l1-11M902 1200q-2-20-5-30q-2-10-10-27q-7-16-17-30q-9-13-19-23q-9-10-20-18q-11-8-21-11q-10-3-20 1q-10 5-18 21q-8 17-11 27q-3 10-5 30q-1 20 0 40l2 20'/%3E%3Cpath stroke-opacity='.3' stroke-width='1.6' d='M0 435q20-6 31-11q12-4 28-14q17-10 27-20q11-10 17-20q7-10 11-30q4-20 2-40q-2-20-9-40q-6-20-10-30q-4-10-11-22q-6-12-16-26q-10-13-20-21q-10-7-30-10l-20-2M1200 149q-20 8-30 15q-10 8-20 17q-10 10-20 21q-10 12-20 25q-9 13-16 23q-6 10-12 20q-6 10-14 25q-8 16-14 30q-6 15-10 33q-4 19-4 22q0 3 7 21q8 19 20 26q13 8 23 11q10 4 30 5q20 2 40-1q20-2 30-5l10-2M584 0q3 20 6 40q3 20 6 36q4 16 8 30q4 14 10 29q6 16 14 30q9 15 17 25q8 10 19 20q12 10 24 18q12 8 22 13q10 5 26 12q16 7 30 12q14 5 34 9q20 5 30 6q10 2 30 1q20 0 30-3q10-2 26-10q17-8 30-18q14-10 24-20q10-10 18-20q9-10 16-20q8-10 15-20q7-10 14-22q7-11 17-29q10-18 15-29q6-10 10-20q5-10 14-30q10-20 14-30l5-10M0 1031q8-11 15-21q8-10 16-21q9-11 19-25q10-13 20-28q10-15 16-26q7-10 13-20q6-10 13-27q8-16 13-30q6-13 10-33q4-20 5-30q1-10 0-21q0-11-4-30q-3-19-10-35q-6-16-15-30q-8-14-18-24q-9-10-21-19q-12-8-22-13q-10-4-30-8l-20-4M1200 586q-20-2-40-1q-20 1-40 3q-20 2-40 5q-20 3-33 5q-12 2-30 5q-17 3-37 7q-20 4-33 7q-12 3-30 7q-17 4-37 9q-20 5-30 7q-10 3-30 7q-20 5-40 8q-20 3-30 4q-10 1-30 1q-20 1-30 0q-10-1-30-6q-20-4-34-9q-13-5-30-13q-16-8-26-14q-10-5-24-12q-13-6-30-13q-16-6-36-8q-20-2-40 2q-20 5-30 10q-10 5-23 14q-12 9-22 19q-10 10-19 20q-8 10-17 23q-9 13-18 30q-9 17-14 27q-4 10-9 30q-5 20-6 40q-1 20 1 40q3 20 9 40q6 20 11 30q5 10 12 20q8 10 21 20q13 10 28 16q16 6 33 10q17 4 30 7q13 3 32 10q20 7 30 13q11 6 21 14q10 9 20 22q10 13 17 25q7 13 11 23q4 10 9 30q6 20 9 37q4 18 6 30l2 13M1200 1031q-6 9-13 19q-7 10-17 25q-10 16-18 30q-8 15-13 25q-5 10-12 25q-7 16-13 30l-6 15M708 0q3 20 7 35q5 15 12 30q8 15 16 25q8 10 19 20q12 10 25 16q13 7 27 10q14 4 26 4q12 0 26-4q14-3 24-10q11-6 21-16q11-10 20-25q9-14 15-30q6-15 10-35l4-20M960 1200q0-7 0-20q0-12-2-26q-1-14-6-34q-5-20-9-31q-3-10-11-30q-8-19-13-29q-4-10-12-28q-7-17-13-30q-5-12-10-23q-4-10-14-28q-10-17-20-28q-10-11-20-18q-10-6-23-11q-13-4-30-5q-17-1-27 1q-10 3-24 11q-14 9-21 19q-6 10-10 30q-3 20-2 40q1 20 2 40q2 20 3 40q1 20 1 38q1 18 1 30q1 12 2 32q1 20 3 40l3 20'/%3E%3C/svg%3E") center top/1200px 1200px;color:var(--ink);font:400 17px/1.62 var(--fb);overflow-x:hidden}
[hidden]{display:none!important}
img,svg{max-width:100%}
a{color:var(--g);text-underline-offset:3px;text-decoration-thickness:1.5px}
a:hover{color:var(--g2)}
:focus-visible{outline:3px solid var(--verm);outline-offset:2px}
h1,h2,h3{font-family:var(--fd);margin:0;overflow-wrap:break-word}
h1{font-weight:800;font-size:clamp(32px,4.1vw,52px);line-height:1.04;letter-spacing:-.022em}
h2{font-weight:800;font-size:clamp(25px,2.6vw,34px);line-height:1.12;letter-spacing:-.015em}
h3{font-weight:500;font-size:19px;line-height:1.25}
p{margin:0 0 1em}
code{font-family:var(--fm);font-size:.9em}
.skip{position:absolute;left:12px;top:-80px;z-index:99;background:var(--ink);color:#ffffff;padding:12px 18px;font-weight:600}
.skip:focus{top:12px;color:#ffffff}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:10px 24px;border:1.5px solid var(--g);border-radius:2px;background:var(--g);color:#ffffff;font:500 16px/1.2 var(--fd);letter-spacing:.005em;text-decoration:none;cursor:pointer;text-align:center;transition:background .15s,transform .15s}
.btn::after{content:"";flex:none;width:0;height:0;border-left:9px solid currentColor;border-top:6px solid transparent;border-bottom:6px solid transparent}
.btn:hover{background:var(--g2);border-color:var(--g2);color:#ffffff}
.btn:active{transform:translateY(1px)}
.btn.sm{min-height:44px;padding:8px 16px;font-size:14.5px;gap:9px}
.btn.sm::after{border-left-width:7px;border-top-width:5px;border-bottom-width:5px}
.btn.ghost{background:var(--panel);color:var(--ink);border-color:var(--ink)}
.btn.ghost::after{display:none}
.btn.ghost:hover{background:#dbe8d8;color:var(--ink);border-color:var(--ink)}
.btn.wide{width:100%}
.btn.inv{background:#9fe8ca;border-color:#9fe8ca;color:var(--slab)}
.btn.inv:hover{background:#c4f3e0;border-color:#c4f3e0;color:var(--slab)}
.acts{display:flex;flex-wrap:wrap;gap:12px}

/* header cartouche */
.hd{position:sticky;top:0;z-index:50;padding:12px 16px 0}
.plate{max-width:1240px;margin:0 auto;padding:1.5px;background:var(--ink);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);filter:drop-shadow(0 6px 0 rgba(19,32,28,.08))}
.plate-in{display:flex;align-items:center;gap:8px 18px;min-height:62px;padding:8px 9px 8px 18px;background:var(--panel);clip-path:polygon(13px 0,100% 0,100% calc(100% - 13px),calc(100% - 13px) 100%,0 100%,0 13px)}
.logo{display:inline-flex;align-items:center;gap:11px;min-height:44px;color:var(--ink);text-decoration:none;font:800 18px/1.02 var(--fd);letter-spacing:-.015em}
.logo svg{flex:none}
.logo:hover{color:var(--ink)}
.nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav a{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 13px;color:var(--ink);text-decoration:none;font:600 12.5px/1 var(--fm);letter-spacing:.06em;text-transform:uppercase}
.nav a:hover{background:#dbe8d8}
.nav a[aria-current]{box-shadow:inset 0 -3px 0 var(--g)}
.nav i{flex:none;width:10px;height:10px;border:1.5px solid var(--ink)}
.nav a:nth-child(1) i{border:0;background:var(--ink);clip-path:polygon(50% 0,100% 100%,0 100%)}
.nav a:nth-child(3) i{border-radius:50%}
.nav a:nth-child(4) i{background:var(--ink);transform:rotate(45deg) scale(.82)}
.nav a:nth-child(5) i{border:0;background:linear-gradient(var(--ink),var(--ink)) center/100% 2px no-repeat,linear-gradient(var(--ink),var(--ink)) center/2px 100% no-repeat}
.nav a[aria-current] i{border-color:var(--verm)}
.nav a[aria-current]:nth-child(1) i,.nav a[aria-current]:nth-child(4) i{background:var(--verm)}
.burger{display:none;width:46px;height:46px;border:1.5px solid var(--ink);border-radius:2px;background:var(--panel);color:var(--ink);cursor:pointer;place-items:center;padding:0}

/* station marker */
.stn{display:inline-flex;align-items:center;gap:8px;font:600 12px/1 var(--fm);letter-spacing:.08em;color:var(--mut)}
.stn i{width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:12px solid var(--g)}
.stn b{font-weight:600;color:var(--ink)}
.stn u{text-decoration:none;padding-left:8px;border-left:1.5px solid var(--verm)}

/* hero */
.hero{position:relative;max-width:1240px;margin:0 auto;padding:60px 24px 56px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:56px;align-items:center;overflow:hidden;overflow:clip}
.hero-l{position:relative;z-index:2;min-width:0}
.eyebrow{display:inline-block;margin:0 0 20px;padding:6px 11px;border:1.5px solid var(--ink);background:var(--panel);font:600 12px/1.2 var(--fm);letter-spacing:.1em;text-transform:uppercase}
.lead{font-size:clamp(18px,1.5vw,20.5px);line-height:1.5;color:#263833;margin:20px 0 0;max-width:60ch}
.pts{list-style:none;margin:24px 0 30px;padding:0;border-top:1.5px solid var(--ink)}
.pts li{position:relative;padding:11px 0 11px 34px;border-bottom:1px solid var(--hair);font-size:16px;line-height:1.45}
.pts li::before{content:"";position:absolute;left:2px;top:14px;width:18px;height:14px;background:var(--verm);clip-path:polygon(0 50%,100% 0,100% 100%)}
.hero-r{position:relative;min-width:0;padding:50px 0 44px 44px}
.cam{position:absolute;z-index:0;width:28px;height:28px;border:1.5px solid var(--ink);border-radius:50%;background:var(--panel);display:grid;place-items:center;font:600 10px/1 var(--fm);color:var(--ink)}
.cam b{position:relative;font-weight:600}
.cam::before{content:"";position:absolute;left:50%;top:50%;width:760px;height:760px;margin:-380px 0 0 -380px;border-radius:50%;z-index:-1;pointer-events:none;background:conic-gradient(from var(--a,95deg),rgba(217,159,43,.2) 0 var(--w,38deg),transparent 0);-webkit-mask:radial-gradient(circle,#000000 0 62%,transparent 63%);mask:radial-gradient(circle,#000000 0 62%,transparent 63%)}
.cam::after{content:"";position:absolute;left:50%;top:50%;width:420px;height:0;border-top:1.5px dashed rgba(163,114,20,.55);transform-origin:0 0;transform:rotate(var(--b,24deg));z-index:-1;pointer-events:none}
.cam-1{left:0;top:8px;--a:96deg;--w:36deg;--b:24deg}
.cam-2{right:6px;bottom:2px;--a:278deg;--w:34deg;--b:205deg}
.cam-3{right:64px;top:4px;--a:196deg;--w:30deg;--b:121deg}
.slab-h{position:relative;z-index:1;display:flex;align-items:center;gap:14px;margin:0;padding:10px 14px;background:var(--panel);border:1.5px solid var(--ink);border-bottom:0;font:600 12.5px/1.2 var(--fm);letter-spacing:.08em;text-transform:uppercase}
.hero-r .codebox{position:relative;z-index:1}

/* code */
.codebox{background:var(--slab);border:1.5px solid var(--ink);box-shadow:10px 10px 0 rgba(19,32,28,.14);min-width:0}
.codetabs{display:flex;gap:0;border-bottom:1px solid #2a3f38;overflow-x:auto}
.codetabs button{min-height:46px;padding:0 18px;border:0;border-right:1px solid #2a3f38;background:none;color:#b9cdc3;font:600 13px/1 var(--fm);letter-spacing:.04em;cursor:pointer;white-space:nowrap}
.codetabs button:hover{color:#ffffff}
.codetabs button[aria-selected="true"]{background:#9fe8ca;color:var(--slab)}
.codetabs button:focus-visible{outline-offset:-3px}
pre.code{position:relative;margin:0 0 1.4em;background:var(--slab);color:#dceae0;border:1.5px solid var(--ink);font:400 13.5px/1.65 var(--fm);overflow-x:auto;max-width:100%;tab-size:2}
pre.code code{display:block;overflow-x:auto;padding:52px 20px 20px;font-size:inherit;white-space:pre}
.codebox pre.code{border:0;margin:0}
pre.code .k{color:#9fe8ca}
pre.code .s{color:#ecf28a}
pre.code .c{color:#8aa49a;font-style:italic}
.copy{position:absolute;right:8px;top:8px;min-height:36px;min-width:64px;padding:0 12px;border:1px solid #476056;border-radius:2px;background:#182a24;color:#dceae0;font:600 12px/1 var(--fm);letter-spacing:.05em;cursor:pointer}
.copy::before{content:"";position:absolute;inset:-5px}
.copy:hover{background:#9fe8ca;color:var(--slab);border-color:#9fe8ca}

/* two-column skeleton */
.cols{max-width:1240px;margin:0 auto;padding:44px 24px 72px;display:grid;grid-template-columns:300px minmax(0,1fr);grid-template-areas:"rail intro" "rail content";grid-template-rows:auto 1fr;column-gap:64px}
.cols-key{grid-template-columns:430px minmax(0,1fr);column-gap:60px}
.pg-home .cols{padding-top:28px;border-top:1.5px solid var(--ink)}
.intro{grid-area:intro;min-width:0;padding-bottom:38px}
.content{grid-area:content;min-width:0}
.rail{grid-area:rail;align-self:start;position:sticky;top:98px;min-width:0;padding:1.5px;background:var(--ink);clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,0 100%)}
.rail-in{background:var(--panel);padding:22px 20px 20px;clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,0 100%);max-height:calc(100vh - 122px);overflow-y:auto}
.rail-key .rail-in{max-height:none;overflow:visible;padding:0}
.rail-h{margin:0 0 6px;padding-right:18px;font:800 20px/1.15 var(--fd);letter-spacing:-.01em}
.rail-p{margin:0 0 16px;font-size:14.5px;line-height:1.5;color:var(--mut)}
.lg{margin:0 0 18px;border-top:1.5px solid var(--ink)}
.lr{display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-areas:"s v" "s l";column-gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--hair)}
.lr dd{grid-area:v;margin:0;font:800 19px/1.15 var(--fd);letter-spacing:-.01em;overflow-wrap:anywhere}
.lr dt{grid-area:l;font:400 11.5px/1.35 var(--fm);letter-spacing:.04em;text-transform:uppercase;color:var(--mut)}
.sym{grid-area:s;display:block;width:38px;height:22px}
.s1{background:linear-gradient(var(--g),var(--g)) center/100% 2.5px no-repeat}
.s2{background:repeating-linear-gradient(90deg,var(--g) 0 8px,transparent 8px 13px) center/100% 2.5px no-repeat}
.s3{background:radial-gradient(circle,var(--ink) 1.6px,transparent 2px) left center/7.6px 7.6px repeat-x}
.s4{border:1.5px solid var(--ink);background:repeating-linear-gradient(135deg,var(--g) 0 1.5px,transparent 1.5px 6px)}
.s5{background:var(--verm);clip-path:polygon(0 50%,100% 0,100% 100%)}
.crumbs{display:flex;align-items:center;margin:0 0 18px;font:600 12px/1.3 var(--fm);letter-spacing:.07em;text-transform:uppercase;color:var(--mut)}
.crumbs a{flex:none;display:inline-flex;align-items:center;min-height:44px;color:var(--g)}
.crumbs a::after{content:"";width:18px;height:1.5px;margin:0 10px;background:var(--ink)}
.crumbs span{flex:1 1 0;min-width:0;line-height:44px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.meta{margin:18px 0 0;font:400 13px/1.3 var(--fm);letter-spacing:.05em;text-transform:uppercase;color:var(--mut)}

/* sections */
.sec{padding:46px 0 0}
.sec.first{padding-top:0}
.pg-home .sec:first-child{padding-top:24px}
.sh{display:grid;gap:12px;margin:0 0 26px;padding-top:16px;border-top:1.5px solid var(--ink)}
.fts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px}
.ft{display:grid;grid-template-columns:46px minmax(0,1fr);gap:16px;padding:20px 0;border-bottom:1px solid var(--hair)}
.sec.first .fts{border-top:1.5px solid var(--ink)}
.ft h3{margin:0 0 6px}
.ft p{margin:0;font-size:15.5px;line-height:1.55;color:#263833}
.sw{display:block;width:46px;height:32px;margin-top:2px;border:1.5px solid var(--ink);background-color:var(--panel)}
.sw1{background-image:repeating-linear-gradient(135deg,var(--g) 0 1.5px,transparent 1.5px 7px)}
.sw2{background-image:radial-gradient(circle,var(--g) 1.5px,transparent 2px);background-size:8px 8px}
.sw3{background-image:repeating-linear-gradient(0deg,var(--g) 0 1.5px,transparent 1.5px 6px)}
.sw4{background-image:repeating-linear-gradient(45deg,var(--g) 0 1.5px,transparent 1.5px 7px),repeating-linear-gradient(135deg,var(--g) 0 1.5px,transparent 1.5px 7px)}
.sw5{background-image:repeating-radial-gradient(circle at 30% 120%,transparent 0 5px,var(--g) 5px 6.5px)}
.sw6{background-image:linear-gradient(115deg,var(--g) 0 50%,transparent 50%),conic-gradient(from 240deg at 100% 50%,rgba(217,159,43,.85) 0 60deg,transparent 0)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;counter-reset:st}
.steps li{counter-increment:st;position:relative;min-width:0;padding:20px 18px 18px;background:var(--panel);border:1.5px solid var(--ink)}
.steps li::before{content:counter(st,decimal-leading-zero);display:block;margin:0 0 14px;font:800 44px/1 var(--fd);letter-spacing:-.03em;color:transparent;-webkit-text-stroke:1.5px var(--g)}
.steps li::after{content:"";position:absolute;right:14px;top:22px;width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:15px solid var(--g)}
.steps h3{margin:0 0 6px}
.steps p{overflow-wrap:anywhere;margin:0;font-size:15.5px;line-height:1.55;color:#263833}
.ucs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.ucs-3{grid-template-columns:1fr}
.uc{position:relative;min-width:0;overflow:hidden;padding:22px 22px 20px;background:var(--panel);border:1px solid var(--ink)}
.uc::before{content:"";position:absolute;inset:0;background:conic-gradient(from 212deg at calc(100% - 14px) 14px,rgba(217,159,43,.16) 0 30deg,transparent 0);pointer-events:none}
.uc::after{content:"";position:absolute;right:9px;top:9px;width:10px;height:10px;border-radius:50%;background:var(--panel);border:2.5px solid var(--vt)}
.uc h3{position:relative;margin:0 0 8px;padding-right:34px}
.uc p{position:relative;margin:0;font-size:15.5px;line-height:1.58;color:#263833}

/* prose */
.prose{counter-reset:pz;max-width:76ch}
.prose h2{counter-increment:pz;margin:46px 0 16px;padding-top:16px;border-top:1.5px solid var(--ink)}
.prose h2::before{content:counter(pz,decimal-leading-zero);display:block;margin:0 0 10px;padding-left:22px;font:600 12px/1.1 var(--fm);letter-spacing:.08em;color:var(--mut);background:linear-gradient(var(--g),var(--g)) no-repeat;background:conic-gradient(from 150deg at 7px 0,var(--g) 0 60deg,transparent 0) 0 0/14px 12px no-repeat}
.prose>h2:first-child,.sec.first.prose>h2:first-child{margin-top:0}
.prose h3{margin:30px 0 10px;font-weight:800;font-size:20px}
.prose p,.prose li{color:#1e2f2a}
.prose ul,.prose ol{margin:0 0 1.2em;padding-left:22px}
.prose li{margin:0 0 .45em;padding-left:4px}
.prose ul li::marker{color:var(--vt)}
.prose ol li::marker{font:600 .85em var(--fm);color:var(--g)}
.prose :not(pre)>code{padding:2px 6px;background:#d6e5d2;border:1px solid var(--hair);border-radius:2px;font-size:.86em;overflow-wrap:anywhere}
.prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:0 0 1.5em;font-size:15px;line-height:1.45;border:1.5px solid var(--ink);background:var(--panel)}
.prose th,.prose td{padding:11px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--hair);border-right:1px solid var(--hair);min-width:120px}
.prose th{background:var(--g);color:#ffffff;font:600 12px/1.3 var(--fm);letter-spacing:.06em;text-transform:uppercase;border-color:#3b8a68}
.prose tr:last-child td{border-bottom:0}
.prose blockquote{margin:0 0 1.4em;padding:4px 0 4px 18px;border-left:3px solid var(--verm)}
.long{font-size:18px;line-height:1.72}
.long pre.code{font-size:13.5px}

/* faq */
.qa{border-bottom:1.5px solid var(--ink)}
.qa details{border-top:1px solid var(--hair)}
.qa details:first-child{border-top:0}
.qa summary{display:flex;align-items:center;gap:16px;min-height:58px;padding:12px 4px;cursor:pointer;list-style:none;font:500 18px/1.3 var(--fd)}
.qa summary::-webkit-details-marker{display:none}
.qa summary::before{content:"";flex:none;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:12px solid var(--g);transition:transform .18s}
.qa details[open] summary::before{transform:rotate(90deg);border-left-color:var(--verm)}
.qa summary:hover{background:rgba(244,249,242,.7)}
.ans{padding:0 4px 18px 32px;max-width:72ch}
.ans p{margin:0;color:#1e2f2a}

/* cta band */
.band{position:relative;overflow:hidden;margin:60px 0 0;padding:38px 34px 38px 34px;background:var(--slab);color:#eaf4eb;border:1.5px solid var(--ink)}
.band-in{position:relative;z-index:1;max-width:560px}
.band h2{color:#ffffff;margin:0 0 10px}
.band p{color:#cddcd3;margin:0 0 22px}
.cam-b{right:54px;bottom:26px;left:auto;--a:262deg;--w:44deg;--b:194deg;background:var(--slab);border-color:#9fe8ca}
.cam-b::before{background:conic-gradient(from var(--a),rgba(217,159,43,.5) 0 var(--w),transparent 0)}
.cam-b::after{border-top-color:rgba(159,232,202,.5)}

/* signup form */
.form{padding:24px 22px 22px;background:var(--panel)}
.tabs2{display:grid;grid-template-columns:1fr 1fr;margin:0 0 18px;border:1.5px solid var(--ink)}
.tabs2 button{min-height:46px;padding:6px 8px;border:0;background:none;color:var(--ink);font:600 12.5px/1.2 var(--fm);letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.tabs2 button+button{border-left:1.5px solid var(--ink)}
.tabs2 button[aria-selected="true"]{background:var(--ink);color:#ffffff}
.tabs2 button:focus-visible{outline-offset:-4px}
.msg{margin:0 0 14px;padding:11px 14px;font-size:15px;line-height:1.4;background:#dfefe3;border-left:4px solid var(--g)}
.msg:empty{display:none}
.msg.err{background:#fbf4e0;border-left-color:var(--verm);color:#7d570d}
.row{margin:0 0 14px}
.row label,.calc label{display:block;margin:0 0 6px;font:600 12px/1.3 var(--fm);letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
input,select,textarea{width:100%;min-height:48px;padding:10px 13px;border:1.5px solid var(--ink);border-radius:2px;background:#ffffff;color:var(--ink);font:400 16px/1.4 var(--fb)}
textarea{min-height:150px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:3px solid var(--verm);outline-offset:1px}
.note{margin:8px 0 0;font-size:13.5px;line-height:1.45;color:var(--mut)}
.form .btn{width:100%}
.form form>.btn{margin-top:4px}
.keyout{display:none}
.keyout.on{display:block}
.keyout h3{margin:0 0 12px;font-weight:800;font-size:21px}
.keybox{display:flex;align-items:center;gap:10px;padding:10px 10px 10px 14px;background:var(--slab);color:#9fe8ca;border:1.5px solid var(--ink);font:600 14px/1.4 var(--fm)}
.keybox span{flex:1;min-width:0;overflow-wrap:anywhere;word-break:break-all}
.keybox .btn{width:auto;flex:none;background:#9fe8ca;border-color:#9fe8ca;color:var(--slab)}
.keyout p{font-size:15px;line-height:1.7;overflow-wrap:anywhere}
.keyout code{font-size:13px}
.keyout .acts{gap:8px;margin-top:14px}
.keyout .acts .btn{width:auto;flex:1 1 auto}
.mut{color:var(--mut)}

/* pricing */
.facts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin:0;border:1.5px solid var(--ink);background:var(--panel)}
.fc{grid-column:span 2;min-width:0;padding:20px 20px 18px;border-right:1px solid var(--hair);display:flex;flex-direction:column}
.fc:nth-child(1),.fc:nth-child(2){grid-column:span 3;border-bottom:1.5px solid var(--ink);padding:26px 22px 22px}
.fc:nth-child(2),.fc:nth-child(5){border-right:0}
.fc dd{margin:0 0 6px;font:800 27px/1.05 var(--fd);letter-spacing:-.02em;overflow-wrap:anywhere}
.fc:nth-child(1) dd,.fc:nth-child(2) dd{font-size:clamp(40px,4.6vw,60px);color:var(--g)}
.fc dt{font:400 12px/1.4 var(--fm);letter-spacing:.05em;text-transform:uppercase;color:var(--mut)}
.calc{display:grid;gap:14px;margin:14px 0 16px}
.calc>div{min-width:0}
.calc>div:last-child{padding:14px 14px 12px;background:var(--slab);border:1.5px solid var(--ink)}
.calc>div:last-child label{color:#b9cdc3}
.calc output{display:block;font:800 38px/1.05 var(--fd);letter-spacing:-.02em;color:#9fe8ca;overflow-wrap:anywhere}

/* toc */
.toc ol{list-style:none;margin:10px 0 18px;padding:0;border-top:1.5px solid var(--ink);counter-reset:tc}
.toc li{counter-increment:tc;border-bottom:1px solid var(--hair)}
.toc a{display:grid;grid-template-columns:26px minmax(0,1fr);gap:6px;align-items:baseline;min-height:44px;padding:11px 0;color:var(--ink);text-decoration:none;font-size:14.5px;line-height:1.35}
.toc a::before{content:counter(tc,decimal-leading-zero);font:600 11px/1 var(--fm);color:var(--g)}
.toc a:hover{color:var(--g);text-decoration:underline}

/* takeaways */
.tk{position:relative;overflow:hidden;margin:0 0 40px;padding:24px 26px 14px;background:var(--panel);border:1.5px solid var(--ink)}
.tk::before{content:"";position:absolute;inset:0;background:conic-gradient(from 222deg at 100% 0,rgba(217,159,43,.15) 0 30deg,transparent 0);pointer-events:none}
.tk h2{position:relative;font-size:22px;margin:0 0 14px}
.tk ul{position:relative;list-style:none;margin:0;padding:0}
.tk li{position:relative;padding:11px 0 11px 32px;border-top:1px solid var(--hair);font-size:16.5px;line-height:1.5}
.tk li::before{content:"";position:absolute;left:2px;top:16px;width:18px;height:13px;background:var(--verm);clip-path:polygon(0 50%,100% 0,100% 100%)}

/* support / 404 */
.sup form{max-width:620px;padding:24px 22px;background:var(--panel);border:1.5px solid var(--ink)}
.sup form .btn{margin-top:4px}
.nf{list-style:none;margin:0 0 26px;padding:0;border-top:1.5px solid var(--ink);max-width:520px}
.nf li{border-bottom:1px solid var(--hair)}
.nf a{display:flex;align-items:center;min-height:50px;font:500 18px/1.2 var(--fd);text-decoration:none}
.nf a:hover{text-decoration:underline}

/* footer */
.ft-wrap{margin-top:20px;background:var(--slab);color:#cddcd3;border-top:1.5px solid var(--ink)}
.foot{max-width:1240px;margin:0 auto;padding:44px 24px 34px;display:grid;grid-template-columns:300px minmax(0,1fr);gap:26px 64px}
.foot .logo{color:#ffffff}
.foot-b p{margin:12px 0 0;font-size:15px;line-height:1.5;color:#b9cdc3}
.foot-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px;align-content:start}
.foot-l a{display:flex;align-items:center;min-height:44px;color:#eaf4eb;text-decoration:none;font-size:15px;line-height:1.3;border-bottom:1px solid #2a3f38}
.foot-l a:hover{color:#9fe8ca}
.legal{grid-column:1/-1;margin:0;padding-top:20px;border-top:1px solid #2a3f38;font:400 12px/1.6 var(--fm);letter-spacing:.02em;color:#a9bfb5}

@media (max-width:1100px){
.nav a{padding:0 9px;letter-spacing:.03em}
.cols{grid-template-columns:270px minmax(0,1fr);column-gap:40px}
.cols-key{grid-template-columns:400px minmax(0,1fr);column-gap:40px}
.hero{gap:36px}
.steps{gap:14px}
}
@media (max-width:940px){
html{scroll-padding-top:90px}
.plate-in{flex-wrap:wrap;padding:7px 8px 7px 12px;gap:6px 8px;min-height:58px}
.burger{display:grid}
.plate-in>.cta{margin-left:auto}
.nav{display:none;order:9;width:100%;margin:0;flex-direction:column;align-items:stretch;gap:0;padding:6px 0 8px;border-top:1.5px solid var(--ink)}
.nav.open{display:flex}
.nav a{min-height:48px;padding:0 8px;font-size:13.5px;border-bottom:1px solid var(--hair)}
.nav a:last-child{border-bottom:0}
.nav a[aria-current]{box-shadow:inset 3px 0 0 var(--g)}
.hero{grid-template-columns:minmax(0,1fr);padding:38px 16px 40px;gap:30px}
.hero-r{padding:44px 0 34px 0}
.cam-1{left:6px;top:4px}
.cam-2{right:8px;bottom:-2px}
.cols,.cols-key{display:flex;flex-direction:column;padding:30px 16px 56px}.cols>*{min-width:0}.pg-support .rail,.pg-privacy .rail,.pg-terms .rail,.pg-404 .rail{order:3;margin:40px 0 0}
.intro{padding-bottom:26px}
.rail{position:static;margin:0 0 36px}
.rail-in{max-height:none;overflow:visible}
.pg-home .cols{padding-top:30px}
.pg-home .sec:first-child{padding-top:8px}
.foot{grid-template-columns:minmax(0,1fr);padding:36px 16px 28px}
.foot-l{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
body{font-size:16.5px}
.fts{grid-template-columns:minmax(0,1fr)}
.steps{grid-template-columns:minmax(0,1fr)}
.ucs{grid-template-columns:minmax(0,1fr)}
.facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.fc,.fc:nth-child(1),.fc:nth-child(2){grid-column:span 1;padding:18px 16px 16px}
.fc:nth-child(3){grid-column:span 2;border-right:0;border-bottom:1px solid var(--hair)}
.fc:nth-child(4){border-right:1px solid var(--hair)}
.fc:nth-child(1) dd,.fc:nth-child(2) dd{font-size:38px}
.band{padding:30px 22px 34px}
.cam-b{right:22px;bottom:14px}
.long{font-size:17px}
.sec{padding-top:38px}
.btn{padding:10px 20px}
}
@media (max-width:480px){
.logo{font-size:15.5px;gap:9px}
.plate-in>.logo span{max-width:104px}
.plate-in>.cta{padding:8px 12px;font-size:14px}
.acts .btn{flex:1 1 100%}
.form{padding:20px 16px 18px}
.foot-l{grid-template-columns:minmax(0,1fr)}
.keyout .acts .btn{flex:1 1 100%}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
