:root{--bg:#150f26;--bg2:#1f1638;--line:#43346e;--paper:#f7f3ea;--paper2:#ebe5d6;--rule:#b9b0a0;--ink:#1d1433;--mut:#5a5270;--v:#5a23c8;--vl:#c4abff;--txt:#eee9f8;--txt2:#bdb3d6;--err:#a3201a;--pad:28px;
--sans:"Bricolage Grotesque",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"Spline Sans Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--bg) radial-gradient(#ffffff0f 1px,transparent 1.4px) 0 0/22px 22px;color:var(--txt);font:400 17px/1.62 var(--sans);overflow-x:hidden;-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
img,svg{max-width:100%}
a{color:inherit}
h1,h2,h3,p,ul,ol,figure{margin:0}
ul,ol{padding:0;list-style:none}
h1,h2,h3{font-family:var(--sans);line-height:1.08;letter-spacing:-.02em;font-weight:800;overflow-wrap:break-word}
:focus-visible{outline:3px solid var(--vl);outline-offset:3px;border-radius:4px}
.paper :focus-visible{outline-color:var(--v)}
.skip{position:absolute;left:-999px;top:8px;z-index:99;background:var(--paper);color:var(--ink);padding:12px 18px;border-radius:999px;font:600 14px var(--mono)}
.skip:focus{left:12px}
.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 24px}
.paper{background:var(--paper);color:var(--ink)}
.zz{--s:14px;-webkit-mask:conic-gradient(from 135deg at top,#0000,#000 1deg 89deg,#0000 90deg) top/var(--s) 51% repeat-x,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/var(--s) 51% repeat-x;mask:conic-gradient(from 135deg at top,#0000,#000 1deg 89deg,#0000 90deg) top/var(--s) 51% repeat-x,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/var(--s) 51% repeat-x}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 22px;border:2px solid var(--vl);border-radius:999px;background:var(--vl);color:#150f26;font:600 14px/1.2 var(--mono);letter-spacing:.02em;text-transform:uppercase;text-decoration:none;text-align:center;cursor:pointer;transition:transform .15s,background .15s,color .15s}
.btn:hover{transform:translateY(-2px);background:#fff;border-color:#fff}
.btn.ghost{background:transparent;color:var(--txt);border-color:var(--line)}
.btn.ghost:hover{background:transparent;border-color:var(--vl);color:#fff}
.paper .btn{background:var(--v);border-color:var(--v);color:#fff}
.paper .btn:hover{background:var(--ink);border-color:var(--ink)}
.paper .btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.paper .btn.ghost:hover{background:var(--ink);color:var(--paper)}
.btn.sm{min-height:44px;padding:8px 16px;font-size:12.5px}
.btn[disabled]{opacity:.55;cursor:wait}
.acts{display:flex;flex-wrap:wrap;gap:12px}

/* header: floating pill */
.hdr{position:sticky;top:12px;z-index:50;padding:0 16px;margin-top:12px}
.pill{position:relative;max-width:1112px;margin:0 auto;display:flex;align-items:center;gap:16px;padding:6px 6px 6px 14px;border-radius:999px;box-shadow:0 10px 30px #0008,0 0 0 1px #0002}
.logo{display:inline-flex;align-items:center;gap:10px;min-height:44px;min-width:0;text-decoration:none;font:600 14px var(--mono);letter-spacing:-.01em}
.logo span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mark{flex:none;display:block}
.nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav a:not(.btn){display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;font:400 13.5px var(--mono);text-decoration:none;color:var(--ink)}
.nav a:not(.btn):hover{background:var(--paper2)}
.nav a[aria-current]{font-weight:600;text-decoration:underline dotted 2px;text-underline-offset:6px}
.nav .cta{margin-left:10px;min-height:44px;font-size:13px}
.burger{display:none;margin-left:auto;width:48px;height:44px;border:0;border-radius:999px;background:var(--ink);cursor:pointer;align-items:center;justify-content:center}
.burger span,.burger span::before,.burger span::after{display:block;width:18px;height:2px;background:var(--paper);border-radius:2px;position:relative}
.burger span::before,.burger span::after{content:"";position:absolute;left:0}
.burger span::before{top:-6px}.burger span::after{top:6px}

/* receipt parts */
.rcpt{position:relative;padding:34px var(--pad) 30px;background:linear-gradient(90deg,#5a23c824 0 5px,transparent 5px calc(100% - 5px),#5a23c824 0) var(--paper);font-family:var(--mono);font-size:14px;line-height:1.5}
.r-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;margin-bottom:14px}
.r-head b{font-size:15px;letter-spacing:.04em;text-transform:uppercase;overflow-wrap:anywhere}
.r-head small{font-size:12.5px;color:var(--mut)}
.r-meta{display:flex;justify-content:space-between;gap:12px;font-size:12.5px;color:var(--mut);text-transform:uppercase;letter-spacing:.06em}
.r-meta span{min-width:0;overflow-wrap:anywhere}
hr{border:0;margin:14px 0}
hr.dash{border-top:2px dashed var(--rule)}
hr.dbl{height:6px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.li{display:flex;align-items:baseline;gap:8px;padding:5px 0}
.li span{min-width:0;overflow-wrap:anywhere}
.li i{flex:1 1 24px;min-width:18px;border-bottom:2px dotted currentColor;opacity:.45;transform:translateY(-4px)}
.li b{font-weight:600;white-space:nowrap}
.li.tot b{font-size:1.25em;color:var(--v);text-transform:uppercase}
.r-url{font-size:12.5px;color:var(--mut);overflow-wrap:anywhere;margin-top:2px}
.stamp{display:table;margin:12px 4px 0 auto;padding:5px 12px;border:3px double var(--v);border-radius:6px;color:var(--v);font:600 13px var(--mono);letter-spacing:.14em;text-transform:uppercase;transform:rotate(-7deg);opacity:.7}
.perf{position:relative;margin:22px calc(var(--pad) * -1);border-top:2px dashed var(--rule)}
.perf::before,.perf::after{content:"";position:absolute;top:-12px;width:22px;height:22px;border-radius:50%;background:var(--bg)}
.perf::before{left:-11px}.perf::after{right:-11px}
.rcpt>.btn{width:100%}
.bar{height:40px;margin-top:20px;color:var(--ink);opacity:.9;background:repeating-linear-gradient(90deg,currentColor 0 2px,transparent 2px 5px,currentColor 5px 6px,transparent 6px 8px,currentColor 8px 12px,transparent 12px 14px,currentColor 14px 15px,transparent 15px 19px,currentColor 19px 21px,transparent 21px 23px)}
.r-note{margin-top:12px;text-align:center;font-size:12.5px;color:var(--mut)}

/* hero */
.hero{padding:64px 0 40px}
.h-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:64px;align-items:center}
.h-grid>*{min-width:0}
.eyebrow{display:inline-block;margin-bottom:22px;padding:6px 14px;border:1px dashed var(--line);border-radius:999px;font:400 13px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--vl)}
h1{font-size:clamp(2.2rem,4.7vw,4.1rem);color:#fff}
.h-txt h1{max-width:15ch}
.lead{margin-top:22px;max-width:60ch;font-size:1.14rem;color:var(--txt2)}
.hero .acts{margin-top:30px}
.ticks{margin-top:30px;display:grid;gap:2px;max-width:60ch;font:400 14px/1.5 var(--mono);color:var(--txt2)}
.ticks li{position:relative;padding:9px 0 9px 30px;border-top:1px dashed var(--line)}
.ticks li::before{content:"";position:absolute;left:4px;top:15px;width:12px;height:6px;border-left:2px solid var(--vl);border-bottom:2px solid var(--vl);transform:rotate(-45deg)}
.h-rcpt .rcpt{transform:rotate(1.4deg);box-shadow:none}
.sub{margin-top:22px;padding-top:16px;border-top:1px dashed var(--line);max-width:60ch;font:400 14px/1.5 var(--mono);color:var(--vl)}
.rcpt.big .li{padding:9px 0}
.rcpt.big .li b{font-size:1.3rem}

/* sections */
main{counter-reset:sec}
.sec{padding:48px 0}
.sec.flush{padding-top:8px}
.sec-h{display:flex;align-items:baseline;gap:16px;margin-bottom:28px;counter-increment:sec}
.sec-h::before{content:"#" counter(sec,decimal-leading-zero);flex:none;font:400 13px var(--mono);letter-spacing:.08em;color:var(--vl)}
.sec-h::after{content:"";flex:1;min-width:20px;border-bottom:2px dotted var(--line);transform:translateY(-6px)}
.sec-h h2{font-size:clamp(1.6rem,3vw,2.4rem);color:#fff;min-width:0}

/* code */
.codebox{border:1px solid var(--line);border-radius:14px;background:#0d0919;overflow:hidden}
.codetabs{display:flex;gap:4px;padding:8px 8px 0;border-bottom:1px dashed var(--line);overflow-x:auto}
.codetabs button{min-height:44px;padding:0 18px;border:0;border-radius:8px 8px 0 0;background:transparent;color:var(--txt2);font:400 13.5px var(--mono);cursor:pointer}
.codetabs button[aria-selected=true]{background:var(--paper);color:var(--ink);font-weight:600}
pre.code{position:relative;margin:0;background:#0d0919;color:#e8e2f6;border-radius:10px;font:400 13.5px/1.65 var(--mono);max-width:100%;min-width:0}
.codebox pre.code{border-radius:0}
pre.code code{display:block;overflow-x:auto;padding:22px 22px 24px;padding-right:96px;white-space:pre;font:inherit;background:none;color:inherit;-webkit-overflow-scrolling:touch}
pre.code .k{color:var(--vl)}pre.code .s{color:#f3dfa2}pre.code .c{color:#9a90b5}
.copy{position:absolute;top:8px;right:8px;min-height:44px;min-width:44px;padding:0 12px;border:1px dashed #6d5ba3;border-radius:8px;background:#0d0919;color:var(--txt);font:400 12px var(--mono);text-transform:uppercase;letter-spacing:.06em;cursor:pointer}
.copy:hover{border-style:solid;border-color:var(--vl);color:#fff}
.try{max-width:920px}

/* itemised features */
.itm{counter-reset:it;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px;padding:14px 36px;border-radius:6px}
.itm li{counter-increment:it;position:relative;padding:24px 0 24px 52px;border-bottom:2px dashed var(--rule);min-width:0}
.itm li:nth-last-child(-n+2){border-bottom:0}
.itm li::before{content:counter(it,decimal-leading-zero);position:absolute;left:0;top:25px;font:600 14px var(--mono);color:var(--v);padding:2px 6px;border:1.5px solid var(--v);border-radius:4px}
.itm h3,.tix h3,.exs h3,.ben h3,.uc h3{font-size:1.2rem;letter-spacing:-.01em;line-height:1.2}
.itm p{margin-top:8px;color:var(--mut);font-size:.98rem}

/* steps: ticket strip */
.tix{counter-reset:st;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--paper);color:var(--ink);border-radius:14px}
.tix li{counter-increment:st;position:relative;padding:30px 28px 32px;min-width:0}
.tix li::before{content:"0" counter(st);display:block;margin-bottom:16px;font:600 2.6rem/1 var(--mono);color:var(--v);letter-spacing:-.04em}
.tix li+li{border-left:2px dashed var(--rule)}
.tix li+li::after{content:"";position:absolute;left:-12px;top:-11px;bottom:-11px;width:22px;background:radial-gradient(circle 11px at 11px 0,var(--bg) 98%,#0000),radial-gradient(circle 11px at 11px 100%,var(--bg) 98%,#0000);pointer-events:none}
.tix p{margin-top:10px;color:var(--mut);font-size:.98rem}

/* use cases on the counter */
.uc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.uc article{padding:26px 26px 28px;border:1.5px dashed var(--line);border-radius:14px;background:var(--bg2);min-width:0}
.uc h3{color:#fff}
.uc p{margin-top:10px;color:var(--txt2);font-size:.98rem}

/* prose */
.prose{padding:40px 44px;border-radius:6px;min-width:0;overflow-wrap:break-word}
.roll{max-width:820px;margin:0 auto}
.prose>*+*{margin-top:1.05em}
.prose h2{font-size:clamp(1.45rem,2.4vw,1.85rem);margin-top:1.9em;padding-top:1.1em;border-top:2px dashed var(--rule);scroll-margin-top:96px}
.prose>h2:first-child,.prose .tk+h2{margin-top:0;padding-top:0;border-top:0}
.prose .tk+h2{margin-top:1.4em}
.prose h3{font-size:1.2rem;margin-top:1.6em;scroll-margin-top:96px}
.prose a{color:var(--v);text-decoration:underline;text-underline-offset:3px}
.prose a:hover{color:var(--ink)}
.prose ul,.prose ol{padding-left:1.3em}
.prose ul{list-style:square}.prose ol{list-style:decimal}
.prose li{margin-top:.4em;padding-left:.2em}
.prose li::marker{color:var(--v);font-family:var(--mono);font-size:.9em}
.prose strong{font-weight:600}.prose h2 strong,.prose h3 strong{font-weight:inherit}
.prose :not(pre)>code{font:400 .88em var(--mono);background:var(--paper2);padding:2px 6px;border-radius:4px;overflow-wrap:anywhere}
.prose pre.code{margin-top:1.2em}
.prose table{display:block;width:max-content;max-width:100%;overflow-x:auto;border-collapse:collapse;font:400 13.5px/1.45 var(--mono)}
.prose th,.prose td{padding:11px 16px 11px 0;text-align:left;vertical-align:top;border-bottom:2px dotted var(--rule);min-width:120px}
.prose th{font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:12.5px;border-bottom:2px solid var(--ink)}
.prose blockquote{margin-left:0;margin-right:0;padding:4px 0 4px 18px;border-left:4px solid var(--v);color:var(--mut)}

/* faq */
.faq{max-width:920px;padding:8px 36px;border-radius:6px}
.faq details{border-bottom:2px dashed var(--rule)}
.faq details:last-child{border-bottom:0}
.faq summary{display:flex;align-items:center;gap:16px;min-height:64px;padding:14px 0;cursor:pointer;list-style:none;font-weight:600;font-size:1.08rem;line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary span{flex:1;min-width:0}
.faq summary::after{content:"+";flex:none;width:32px;height:32px;display:grid;place-items:center;border:1.5px solid var(--ink);border-radius:50%;font:600 18px/1 var(--mono);color:var(--ink);transition:transform .2s}
.faq details[open] summary::after{content:"\2212";background:var(--v);border-color:var(--v);color:#fff}
.faq details p{padding:0 48px 22px 0;color:var(--mut)}

/* cta ticket */
.ticket{display:grid;grid-template-columns:minmax(0,1fr) 340px;border-radius:14px}
.t-main{padding:40px 44px;min-width:0}
.t-main h2{font-size:clamp(1.6rem,3vw,2.3rem)}
.t-main p{margin-top:12px;color:var(--mut);max-width:52ch}
.t-stub{position:relative;display:flex;flex-direction:column;justify-content:center;padding:32px 32px;border-left:2px dashed var(--rule);min-width:0}
.t-stub::after{content:"";position:absolute;left:-12px;top:-11px;bottom:-11px;width:22px;background:radial-gradient(circle 11px at 11px 0,var(--bg) 98%,#0000),radial-gradient(circle 11px at 11px 100%,var(--bg) 98%,#0000);pointer-events:none}
.t-stub .btn{width:100%}
.t-stub .bar{margin-top:18px;height:30px}

/* page heads */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-bottom:20px;font:400 13px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--txt2)}
.crumbs a{display:inline-flex;align-items:center;min-height:44px;color:var(--vl);text-underline-offset:4px}
.crumbs span{overflow-wrap:anywhere;min-width:0}
.crumbs .sep{opacity:.5}
.phead{padding:56px 0 36px}
.phead h1,.khero h1{font-size:clamp(2rem,4vw,3.3rem);max-width:20ch}
.ph-in{max-width:820px}
.spec{margin-top:28px;max-width:620px;padding:10px 18px;border:1.5px dashed var(--line);border-radius:12px;background:var(--bg2);font:400 13.5px var(--mono);color:var(--txt2)}
.spec .li b{color:#fff;white-space:normal;overflow-wrap:anywhere;text-align:right;min-width:0}
.upd{margin-top:20px;font:400 13px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--vl)}

/* docs + article layout */
.d-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:36px;align-items:start}
.a-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:36px;align-items:start}
.d-grid>*,.a-grid>*{min-width:0}
.d-side{position:sticky;top:92px;display:grid;gap:18px;max-height:calc(100vh - 104px);overflow-y:auto;scrollbar-width:thin}
.toc{padding:26px 22px 26px;font-family:var(--mono);counter-reset:tc}
.toc-h{font:600 12.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;padding-bottom:10px;border-bottom:2px solid var(--ink)}
.toc li{counter-increment:tc;border-bottom:2px dotted var(--rule)}
.toc li:last-child{border-bottom:0}
.toc a{display:flex;gap:10px;align-items:baseline;min-height:44px;padding:10px 0;font-size:13px;line-height:1.4;text-decoration:none;color:var(--ink)}
.toc a::before{content:counter(tc,decimal-leading-zero);color:var(--v);font-weight:600}
.toc a:hover{color:var(--v);text-decoration:underline}
.sidecard{padding:22px;border:1.5px dashed var(--line);border-radius:14px;background:var(--bg2);font-size:.95rem;color:var(--txt2)}
.sc-h{font-weight:800;font-size:1.15rem;line-height:1.2;color:#fff;margin-bottom:8px}
.sidecard .btn{width:100%;margin-top:16px}
.long{font-size:1.06rem;line-height:1.72;padding:44px 52px}
.tk{padding:22px 24px;border:2px solid var(--ink);border-radius:6px;background:var(--paper2);box-shadow:6px 6px 0 var(--v)}
.prose .tk h2{margin:0;padding:0;border:0;font:600 12.5px var(--mono);letter-spacing:.08em;text-transform:uppercase}
.prose .tk ul{list-style:none;padding:0;margin-top:10px}
.prose .tk li{position:relative;padding:9px 0 9px 28px;border-top:2px dotted var(--rule);margin:0;font-size:1rem;line-height:1.5}
.tk li::before{content:"";position:absolute;left:3px;top:17px;width:12px;height:6px;border-left:2px solid var(--v);border-bottom:2px solid var(--v);transform:rotate(-45deg)}

/* key page */
.khero{padding:48px 0 40px}
.k-grid{display:grid;grid-template-columns:minmax(0,1fr) 440px;grid-template-areas:"head form" "ben form";gap:36px 64px;align-items:start}
.k-grid>*{min-width:0}
.k-head{grid-area:head}.k-form{grid-area:form}.k-ben{grid-area:ben}
.mini{font:400 13px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--vl);padding-bottom:12px;border-bottom:2px dotted var(--line)}
.ben{counter-reset:bn;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.ben li{counter-increment:bn;padding:20px 0;border-bottom:1px dashed var(--line);min-width:0}
.ben li::before{content:"0" counter(bn);display:block;margin-bottom:8px;font:600 13px var(--mono);color:var(--vl)}
.ben h3{color:#fff;font-size:1.1rem}
.ben p{margin-top:6px;color:var(--txt2);font-size:.95rem}
.form{font-family:var(--sans)}
.tabs2{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:2px solid var(--ink);border-radius:999px;margin:6px 0 18px}
.tabs2 button{min-height:44px;border:0;border-radius:999px;background:transparent;color:var(--ink);font:600 13px var(--mono);text-transform:uppercase;letter-spacing:.03em;cursor:pointer}
.tabs2 button[aria-selected=true]{background:var(--ink);color:var(--paper)}
.msg:empty{display:none}
.msg{margin-bottom:14px;padding:12px 14px;border-radius:6px;font:400 13.5px/1.45 var(--mono)}
.msg.err{background:#fbe4e1;color:var(--err);border:1.5px dashed var(--err)}
.row{margin-bottom:14px}
.row label,.calc label{display:block;margin-bottom:6px;font:600 12.5px var(--mono);letter-spacing:.07em;text-transform:uppercase}
.row input,.calc input{width:100%;height:52px;padding:0 14px;border:2px solid var(--ink);border-radius:8px;background:#fff;color:var(--ink);font:400 16px var(--mono)}
.row input:focus,.calc input:focus{outline:3px solid var(--v);outline-offset:2px;border-color:var(--v)}
.note{margin-top:8px;font:400 12.5px/1.5 var(--mono);color:var(--mut)}
.form form>.btn{width:100%;min-height:56px;margin-top:6px;font-size:14px}
.form form>.note{text-align:center;margin-top:12px}
.keyout{display:none}
.keyout.on{display:block}
.keyout h3{font-size:1.3rem;margin-bottom:12px}
.keybox{display:flex;align-items:center;gap:10px;padding:10px 10px 10px 14px;border-radius:8px;background:var(--ink);color:var(--paper)}
.keybox span{flex:1;min-width:0;font:400 13.5px/1.4 var(--mono);overflow-wrap:anywhere;word-break:break-all}
.keybox .btn{flex:none;background:var(--vl);border-color:var(--vl);color:var(--ink)}
.keyout>p:not(.note){margin-top:14px;padding:12px 0;border-top:2px dashed var(--rule);border-bottom:2px dashed var(--rule);font:400 13.5px/1.9 var(--mono);overflow-wrap:anywhere}
.keyout code{font:inherit;color:var(--v)}
.keyout .mut{color:var(--mut)}
.keyout .acts{margin-top:16px;gap:8px}

/* pricing */
.till{max-width:920px;padding:32px 36px;border-radius:6px}
.calc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}
.calc>div{min-width:0}
.calc input{font-size:1.2rem;font-weight:600;height:58px}
.calc>div:last-child{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding-top:18px;border-top:6px double var(--ink)}
.calc>div:last-child label{margin:0;font-size:14px}
.calc output{font:600 clamp(2.2rem,6vw,3.4rem)/1 var(--mono);letter-spacing:-.04em;color:var(--v)}
.exs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.exs article{padding:30px 24px 32px;min-width:0}
.exs p{color:var(--mut);font:400 13.5px/1.6 var(--mono)}

/* 404 */
.nf{padding:72px 0}
.nf .rcpt{max-width:460px;margin:0 auto}
.nf-n{font:600 5.4rem/1 var(--mono);letter-spacing:-.06em;color:var(--v);text-align:center;margin:18px 0 8px}
.nf h1{font-size:1.7rem;color:var(--ink);font-family:var(--sans)}
.nf h1+p{margin-top:8px;color:var(--mut);font-family:var(--sans);font-size:1rem}
.nf-l{margin-top:14px}
.nf-l a{display:flex;align-items:center;min-height:44px;border-bottom:2px dotted var(--rule);text-decoration:none}
.nf-l a:hover{color:var(--v)}

/* footer */
.ftr{margin-top:40px;padding:44px 0 40px;border-top:2px dashed var(--line);color:var(--txt2);font-size:.95rem}
.f-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px}
.ftr .logo{color:#fff}
.f-links{display:flex;flex-wrap:wrap;gap:0 26px;margin-top:20px;font:400 13.5px var(--mono)}
.f-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline dotted;text-underline-offset:5px}
.f-links a:hover{color:#fff}
.ftr .bar{color:var(--txt2);opacity:.35;height:26px;max-width:260px}
.legal{margin-top:18px;font:400 12.5px/1.6 var(--mono);color:var(--txt2)}

@media(max-width:1020px){
.h-grid{grid-template-columns:1fr;gap:44px}
.h-rcpt .rcpt{max-width:440px;margin:0 auto}
.k-grid{grid-template-columns:1fr;grid-template-areas:"head" "form" "ben";gap:28px}
.k-form .rcpt{max-width:520px}
.d-grid,.a-grid{grid-template-columns:minmax(0,1fr)}
.a-grid .d-side{order:-1}
.d-side{position:static;max-height:none;overflow:visible}
.d-side .sidecard{display:none}
.ticket{grid-template-columns:1fr}
.t-stub{border-left:0;border-top:2px dashed var(--rule)}
.t-stub::after{left:-11px;right:-11px;top:-12px;bottom:auto;width:auto;height:22px;background:radial-gradient(circle 11px at 0 11px,var(--bg) 98%,#0000),radial-gradient(circle 11px at 100% 11px,var(--bg) 98%,#0000)}
}
@media(max-width:900px){
.burger{display:inline-flex}
.nav{display:none;position:absolute;left:0;right:0;top:calc(100% + 8px);flex-direction:column;align-items:stretch;gap:0;padding:10px 14px 14px;border-radius:22px;background:var(--paper);box-shadow:0 18px 40px #000a}
.nav.open{display:flex}
.nav a:not(.btn){min-height:50px;border-radius:0;border-bottom:2px dotted var(--rule);padding:0 6px;font-size:15px}
.nav .cta{margin:14px 0 0;min-height:50px}
.itm{grid-template-columns:1fr;padding:6px 24px}
.itm li:nth-last-child(2){border-bottom:2px dashed var(--rule)}
.tix{grid-template-columns:1fr}
.tix li+li{border-left:0;border-top:2px dashed var(--rule)}
.tix li+li::after{left:-11px;right:-11px;top:-12px;bottom:auto;width:auto;height:22px;background:radial-gradient(circle 11px at 0 11px,var(--bg) 98%,#0000),radial-gradient(circle 11px at 100% 11px,var(--bg) 98%,#0000)}
.exs{grid-template-columns:1fr}
}
@media(max-width:640px){
:root{--pad:22px}
body{font-size:16.5px}
.wrap{padding:0 16px}
.hdr{padding:0 10px}
.hero{padding:40px 0 24px}
.khero{padding:28px 0 24px}
.khero h1{font-size:1.8rem}
.khero .lead{font-size:1rem;margin-top:14px}
.khero .crumbs{margin-bottom:8px}
.crumbs .sep,.crumbs span[aria-current]{display:none}
.phead{padding:36px 0 24px}
.sec{padding:34px 0}
.lead{font-size:1.05rem}
.h-rcpt .rcpt{transform:none}
.acts .btn{flex:1 1 100%}
.uc,.ben,.calc{grid-template-columns:1fr}
.prose,.long{padding:28px 20px}
.faq{padding:4px 20px}
.faq details p{padding-right:0}
.t-main{padding:28px 22px}
.t-stub{padding:26px 22px}
.till{padding:24px 20px}
.sec-h{gap:10px;margin-bottom:20px}
.sec-h::after{display:none}
.sec-h{flex-direction:column;gap:6px}
pre.code code{padding:60px 16px 18px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}.btn:hover{transform:none}}
