:root{--desk:#e9e2f5;--desk2:#ddd2f0;--paper:#fdfbf7;--ink:#1b1430;--mut:#51476a;--vio:#5a2bb0;--vio-d:#2f1568;--vio-t:#efe8fb;--hair:#d3c8e6;--red:#c2331a;--on-d:#f1ebfb;--on-d2:#cdbff0;
--disp:"Fraunces",Georgia,"Times New Roman",serif;--text:"Newsreader",Georgia,"Times New Roman",serif;--mono:"JetBrains Mono",ui-monospace,Consolas,Menlo,monospace;--pad:clamp(20px,4.2vw,60px)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--desk);background-image:radial-gradient(1100px 520px at 8% -6%,#f6f1fc 0,transparent 70%),radial-gradient(900px 600px at 104% 18%,var(--desk2) 0,transparent 68%);background-repeat:no-repeat;color:var(--ink);font:400 1.125rem/1.62 var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
img,svg{max-width:100%}
a{color:var(--vio);text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--ink);text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--vio);outline-offset:3px;border-radius:3px}
.dark :focus-visible,pre :focus-visible,.codebox :focus-visible,pre:focus-visible{outline-color:#d9c6ff}
h1,h2,h3{font-family:var(--disp);font-weight:600;line-height:1.08;letter-spacing:-.018em;margin:0;text-wrap:balance;overflow-wrap:break-word}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0;list-style:none}
.skip{position:absolute;left:12px;top:-80px;z-index:100;background:var(--ink);color:#fff;padding:12px 18px;border-radius:999px;font:600 .8rem var(--mono)}
.skip:focus{top:12px;color:#fff}

/* floating pill */
.top{position:sticky;top:12px;z-index:50;padding:0 16px;margin-top:12px}
.pill{position:relative;max-width:1020px;margin:0 auto;display:flex;align-items:center;gap:10px;background:rgba(253,251,247,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1.5px solid var(--ink);border-radius:999px;padding:6px 6px 6px 14px;box-shadow:0 4px 0 var(--ink)}
.logo{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font:600 1.06rem/1.05 var(--disp);letter-spacing:-.01em;min-height:44px}
.logo .mark{flex:none;border-radius:8px}
.nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;color:var(--ink);text-decoration:none;font:400 .76rem var(--mono);letter-spacing:.08em;text-transform:uppercase}
.nav a:hover{background:var(--vio-t)}
.nav a[aria-current]{box-shadow:inset 0 -9px 0 -6px var(--ink);border-radius:0;font-weight:600}
.burger{display:none;width:44px;height:44px;border:1.5px solid var(--ink);border-radius:50%;background:transparent;cursor:pointer;flex:none;align-items:center;justify-content:center;flex-direction:column;gap:4px;padding:0}
.burger i{display:block;width:18px;height:2px;background:var(--ink)}
.burger i:nth-child(2){width:12px;margin-right:6px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border:1.5px solid var(--vio);border-radius:999px;background:var(--vio);color:#fff;font:600 .78rem var(--mono);letter-spacing:.09em;text-transform:uppercase;text-decoration:none;cursor:pointer;text-align:center;transition:background .15s,color .15s,transform .15s}
.btn:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.btn:active{transform:translateY(1px)}
.btn[disabled]{opacity:.6;cursor:progress}
.btn.big{min-height:56px;padding:0 30px;font-size:.84rem;box-shadow:0 4px 0 var(--ink)}
.btn.big:hover{box-shadow:0 4px 0 var(--vio)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:#fff}
.btn.sm{min-height:44px;padding:0 16px;font-size:.72rem}
.btns{display:flex;flex-wrap:wrap;gap:14px;align-items:center}

/* sheets */
main{display:block;max-width:1232px;margin:0 auto;padding:28px 16px 8px;counter-reset:folio}
.sheet{position:relative;background:var(--paper);border:1px solid var(--ink);border-top:5px double var(--ink);border-radius:3px;padding:var(--pad);margin:0 0 26px;box-shadow:0 22px 44px -30px rgba(47,21,104,.55);counter-increment:folio;min-width:0}
.sheet::before{content:counter(folio,decimal-leading-zero);position:absolute;top:12px;right:16px;font:400 .68rem var(--mono);letter-spacing:.14em;color:var(--mut)}
.sheet.dark{background:var(--vio-d);color:var(--on-d);border-color:var(--ink)}
.sheet.dark::before{color:var(--on-d2)}
.bar{display:inline-block;position:relative;width:54px;height:11px;background:var(--ink);flex:none}
.bar::after{content:"";position:absolute;left:-5px;right:-5px;top:4px;height:2px;background:var(--red);transform:rotate(-11deg)}
.dark .bar{background:var(--on-d)}
.dark .bar::after{background:#ff9d84}
.sh{display:flex;align-items:center;gap:18px;margin:0 0 clamp(22px,3vw,40px);padding-bottom:16px;border-bottom:1px solid var(--ink)}
.dark .sh{border-color:rgba(241,235,251,.45)}
.sh h2{font-size:clamp(1.7rem,3.4vw,2.7rem);font-style:italic;font-weight:500}
.masthead{display:flex;align-items:center;gap:14px;font:400 .72rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mut);padding:0 44px 14px 0;border-bottom:1px solid var(--ink);margin-bottom:clamp(20px,3vw,36px)}
.mh-l{color:var(--ink);font-weight:600;min-width:0}
.mh-rule{flex:1;height:5px;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);min-width:12px}
.masthead time,.upd{white-space:nowrap}
.lead{font-size:clamp(1.15rem,1.6vw,1.34rem);line-height:1.5;color:var(--ink);margin:0}
.dc::first-letter{font:600 4.1em/.78 var(--disp);float:left;padding:.07em .1em 0 0;color:var(--vio)}

/* home hero */
.hero h1{font-size:clamp(2.35rem,6.3vw,5.5rem);line-height:.98;letter-spacing:-.03em;max-width:17ch;margin-bottom:clamp(24px,3.4vw,44px)}
.hero-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,56px);align-items:start}
.hero-copy,.hero-code{min-width:0}
.redact{margin:26px 0 30px;border-top:1px solid var(--ink)}
.redact li{position:relative;border-bottom:1px solid var(--hair);padding:12px 0 12px 44px;font-size:1.04rem;line-height:1.4}
.redact li::before{content:"";position:absolute;left:0;top:1.28em;width:28px;height:9px;background:var(--ink)}
.redact li::after{content:"";position:absolute;left:-4px;top:calc(1.28em + 3.5px);width:36px;height:2px;background:var(--red);transform:rotate(-11deg)}
.redact li:last-child{border-bottom:1px solid var(--ink)}
.redact span{position:relative;display:inline-block}
.redact span::after{content:"";position:absolute;inset:-2px -5px;background:var(--ink);transform:scaleX(0);animation:lift 1.1s cubic-bezier(.7,0,.2,1) .2s both}
.redact li:nth-child(2) span::after{animation-delay:.4s}
.redact li:nth-child(3) span::after{animation-delay:.6s}
@keyframes lift{0%{opacity:0;transform:scaleX(0);transform-origin:0 50%}8%{opacity:1}45%{transform:scaleX(1);transform-origin:0 50%}46%{transform:scaleX(1);transform-origin:100% 50%}92%{opacity:1}100%{opacity:0;transform:scaleX(0);transform-origin:100% 50%}}
.kicker{font:600 .72rem var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin:0 0 12px;display:flex;align-items:center;gap:12px}
.kicker::after{content:"";flex:1;border-top:1px solid var(--hair)}
.facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:clamp(28px,4vw,52px) 0 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.facts div{display:flex;flex-direction:column-reverse;justify-content:flex-end;padding:16px 16px 14px;border-left:1px solid var(--hair);min-width:0}
.facts div:first-child{border-left:0;padding-left:0}
.facts dd{margin:0;font:600 clamp(1.5rem,2.6vw,2.2rem)/1 var(--disp);letter-spacing:-.02em;color:var(--vio)}
.facts dt{font:400 .68rem/1.35 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mut);margin-top:8px}
.facts.loose{margin:0 0 26px;background:var(--paper);border:1px solid var(--ink);border-radius:3px;padding:0 var(--pad)}
.pagehead .facts{margin-top:clamp(24px,3vw,36px)}

/* columns (features, examples) */
.cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));counter-reset:n}
.cols li{counter-increment:n;padding:6px 28px 30px;border-left:1px solid var(--hair);min-width:0}
.cols li:nth-child(3n+1){border-left:0;padding-left:0}
.cols li:nth-child(n+4){border-top:1px solid var(--hair);padding-top:28px}
.cols li::before{content:counter(n,decimal-leading-zero);display:block;font:400 .7rem var(--mono);letter-spacing:.14em;color:var(--vio);margin-bottom:12px}
.cols h3{font-size:1.42rem;margin-bottom:10px}
.cols p{margin:0;color:var(--mut);font-size:1.03rem}
.cols.three li{padding-bottom:6px}

/* steps */
.stepl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,44px);counter-reset:s}
.stepl li{counter-increment:s;min-width:0;padding-top:14px;border-top:1px solid rgba(241,235,251,.45)}
.stepl li::before{content:counter(s);display:block;font:italic 400 clamp(3.4rem,6vw,5.4rem)/.9 var(--disp);color:#c9b3ff;margin-bottom:14px}
.stepl h3{font-size:1.45rem;margin-bottom:10px;color:#fff}
.stepl p{margin:0;color:var(--on-d)}

/* use cases: clippings on the desk */
.uses{margin:14px 0 40px;padding:0 4px}
.uses .sh{border-color:var(--ink)}
.clips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 26px}
.clips li{background:var(--paper);border:1px solid var(--ink);padding:26px 28px 24px;border-radius:3px;box-shadow:6px 6px 0 var(--vio);min-width:0}
.clips li:nth-child(odd){transform:rotate(-.45deg)}
.clips li:nth-child(even){transform:rotate(.4deg);box-shadow:6px 6px 0 var(--ink)}
.clips h3{font-size:1.5rem;font-style:italic;font-weight:500;margin-bottom:10px;padding-left:16px;border-left:4px solid var(--vio)}
.clips p{margin:0;color:var(--mut)}

/* prose */
.prose{min-width:0;max-width:74ch}
.prose>*{min-width:0}
.prose h2{font-size:clamp(1.55rem,2.6vw,2.05rem);margin:1.9em 0 .6em;padding-top:.8em;border-top:1px solid var(--ink)}
.prose>h2:first-child{margin-top:0}
.prose h3{font-size:1.28rem;margin:1.6em 0 .5em}
.prose ul,.prose ol{margin:0 0 1.1em;padding-left:1.3em}
.prose ul{list-style:none;padding-left:0}
.prose ul li{position:relative;padding-left:1.5em}
.prose ul li::before{content:"";position:absolute;left:0;top:.72em;width:.8em;height:.2em;background:var(--vio)}
.prose ol{list-style:decimal}
.prose ol li::marker{font-family:var(--mono);font-size:.8em;color:var(--vio)}
.prose li{margin:.4em 0}
.prose blockquote{margin:1.6em 0;padding:.2em 0 .2em 1.1em;border-left:4px solid var(--vio);font:italic 500 1.4rem/1.35 var(--disp)}
.prose strong{font-weight:600}
:not(pre)>code{font:400 .84em var(--mono);background:var(--vio-t);border:1px solid var(--hair);border-radius:3px;padding:.08em .34em;overflow-wrap:anywhere}
.prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:1.4em 0;font-size:1rem;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.prose th,.prose td{text-align:left;padding:11px 16px 11px 0;border-bottom:1px solid var(--hair);vertical-align:top;min-width:9ch}
.prose th{font:600 .7rem var(--mono);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--ink);white-space:nowrap}
.prose tr:last-child td{border-bottom:0}
.prose.long>p:first-of-type::first-letter{font:600 4.1em/.78 var(--disp);float:left;padding:.07em .1em 0 0;color:var(--vio)}
.prose.long{font-size:1.19rem;line-height:1.68}
@media(min-width:1000px){
.prose.marg{max-width:none;display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr)}
.prose.marg>*{grid-column:2;max-width:70ch}
.prose.marg>h2{grid-column:1;margin:0;padding:22px 36px 0 0;border-top:1px solid var(--ink);font-style:italic;font-weight:500;font-size:1.75rem;align-self:start;height:100%}
.prose.marg>h2+*{border-top:1px solid var(--ink);padding-top:26px;max-width:none}
.prose.marg>h2+p,.prose.marg>h2+ul,.prose.marg>h2+ol{padding-right:max(0px,calc(100% - 70ch))}
.prose.marg>h2:not(:first-child),.prose.marg>h2:not(:first-child)+*{margin-top:34px}
.prose.marg>*:last-child{margin-bottom:0}
}

/* code */
pre.code{display:grid;grid-template-columns:minmax(100%,max-content);align-content:start;margin:1.3em 0;background:var(--ink);color:#ece6f8;border-radius:4px;padding:6px 6px 18px 18px;overflow-x:auto;max-width:100%;font:400 .82rem/1.65 var(--mono);-moz-tab-size:2;tab-size:2;white-space:pre}
pre.code code{font:inherit;padding-right:18px;display:block}
pre.code .k{color:#c9adff}
pre.code .s{color:#f6b98f}
pre.code .c{color:#a79dc0;font-style:italic}
.copy{position:sticky;right:0;justify-self:end;min-width:64px;min-height:44px;padding:0 12px;border:1px solid rgba(236,230,248,.5);border-radius:999px;background:var(--ink);color:#ece6f8;font:600 .66rem var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;margin-bottom:4px}
.copy:hover{background:#ece6f8;color:var(--ink)}
.codebox{background:var(--ink);border-radius:4px;box-shadow:8px 8px 0 var(--vio);border:1px solid var(--ink);min-width:0}
.codetabs{display:flex;gap:2px;padding:6px 10px 0;border-bottom:1px solid rgba(236,230,248,.25);overflow-x:auto}
.codetabs button{min-height:44px;padding:0 16px;background:none;border:0;border-bottom:3px solid transparent;color:#bdb1d8;font:600 .72rem var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.codetabs button:hover{color:#fff}
.codetabs button[aria-selected="true"]{color:#fff;border-bottom-color:#c9adff}
.codebox pre.code{margin:0;border-radius:0 0 4px 4px;min-height:17.5rem}

/* FAQ */
.faq-list{max-width:900px;margin-left:auto}
details{border-bottom:1px solid var(--hair)}
details:last-child{border-bottom:1px solid var(--ink)}
summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:60px;padding:14px 0;cursor:pointer;list-style:none;font:500 clamp(1.15rem,1.8vw,1.38rem)/1.25 var(--disp)}
summary::-webkit-details-marker{display:none}
summary span{min-width:0}
summary i{position:relative;flex:none;width:30px;height:30px;border:1.5px solid var(--ink);border-radius:50%}
summary i::before,summary i::after{content:"";position:absolute;left:8px;right:8px;top:50%;height:1.5px;margin-top:-.75px;background:var(--ink);transition:transform .2s}
summary i::after{transform:rotate(90deg)}
details[open] summary i{background:var(--ink)}
details[open] summary i::before,details[open] summary i::after{background:#fff}
details[open] summary i::after{transform:rotate(0)}
summary:hover{color:var(--vio)}
.ans{padding:0 50px 18px 0;color:var(--mut);max-width:70ch}
.ans p{margin:0}

/* closing CTA */
.closing{background:var(--vio);color:#fff;border-color:var(--ink);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 40px;align-items:end}
.closing::before{color:#e3d6ff}
.closing .bar{background:#fff;margin-bottom:22px}
.closing .bar::after{background:var(--ink)}
.closing h2{font-size:clamp(2rem,4.6vw,3.6rem);font-style:italic;font-weight:500;margin-bottom:14px}
.closing p{margin:0;font-size:1.2rem;max-width:52ch}
.closing .btn{background:#fff;color:var(--ink);border-color:var(--ink)}
.closing .btn:hover{background:var(--ink);color:#fff}
.closing .btn.ghost{background:transparent;color:#fff;border-color:#fff}
.closing .btn.ghost:hover{background:#fff;color:var(--ink)}

/* page heads + crumbs */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font:400 .7rem/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mut);margin:0 44px 22px 0}
.crumbs a{color:var(--mut);display:inline-flex;align-items:center;min-height:44px;margin:-12px 0}
.crumbs a:hover{color:var(--ink)}
.crumbs i{width:22px;height:1px;background:var(--ink)}
.crumbs span{color:var(--ink);font-weight:600;min-width:0}
.pagehead h1,.pricehead h1,.keyhero h1,.arthead h1,.nf h1{font-size:clamp(2.2rem,5.2vw,4.3rem);line-height:1;letter-spacing:-.028em;margin-bottom:22px}
.pagehead h1{max-width:20ch}
.pagehead .lead{max-width:62ch}

/* key page */
.keyhero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,460px);grid-template-areas:"copy form" "ben form";gap:30px clamp(28px,5vw,72px);align-items:start}
.kh-copy{grid-area:copy;min-width:0}
.kh-form{grid-area:form;min-width:0;align-self:start}
.kh-ben{grid-area:ben;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;border-top:1px solid var(--ink)}
.kh-ben li{padding:16px 0 14px;border-bottom:1px solid var(--hair);min-width:0}
.kh-ben h2{font-size:1.16rem;margin-bottom:6px;letter-spacing:-.01em}
.kh-ben p{margin:0;font-size:.98rem;line-height:1.45;color:var(--mut)}
.form{background:#fff;border:1.5px solid var(--ink);border-radius:5px;padding:26px 26px 22px;box-shadow:10px 10px 0 var(--vio)}
.tabs2{display:grid;grid-template-columns:1fr 1fr;border:1.5px solid var(--ink);border-radius:999px;padding:3px;margin-bottom:20px}
.tabs2 button{min-height:44px;border:0;border-radius:999px;background:transparent;color:var(--ink);font:600 .72rem var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;padding:0 8px}
.tabs2 button[aria-selected="true"]{background:var(--ink);color:#fff}
.msg:empty{display:none}
.msg{margin:0 0 16px;padding:12px 14px;border-radius:4px;font-size:1rem;line-height:1.4}
.msg.err{background:#fdece7;border:1px solid var(--red);border-left-width:5px;color:#8a1f0b}
.row{margin-bottom:16px}
.row label,.calc label{display:block;font:600 .7rem var(--mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px}
.row input,.calc input{display:block;width:100%;height:54px;padding:0 14px;border:1.5px solid var(--ink);border-radius:4px;background:var(--paper);color:var(--ink);font:400 1.05rem var(--mono)}
.row input:focus,.calc input:focus{outline:3px solid var(--vio);outline-offset:2px;background:#fff}
.note{font-size:.92rem;line-height:1.4;color:var(--mut);margin:8px 0 0}
.form form .btn{width:100%;min-height:58px;margin-top:6px;box-shadow:0 4px 0 var(--ink);font-size:.8rem}
.form form>.note{text-align:center;margin-top:16px}
.keyout{display:none}
.keyout.on{display:block}
.keyout h3{font-size:1.6rem;font-style:italic;font-weight:500;margin-bottom:14px}
.keybox{display:flex;align-items:center;gap:10px;background:var(--ink);color:#ece6f8;border-radius:4px;padding:8px 8px 8px 14px;font:400 .86rem/1.4 var(--mono)}
.keybox span{flex:1;min-width:0;overflow-wrap:anywhere}
.keybox .btn{background:#ece6f8;color:var(--ink);border-color:#ece6f8;flex:none}
.keyout p{font-size:1rem;margin:14px 0 0;overflow-wrap:anywhere}
.keyout .mut{color:var(--mut)}
.acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--hair)}

/* docs / article grid */
.docgrid{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:26px;align-items:start}
.docgrid>*{min-width:0}
.side{position:sticky;top:92px;display:grid;gap:20px;max-height:calc(100vh - 104px);overflow:auto;padding:0 6px 8px 0}
.toc{background:var(--paper);border:1px solid var(--ink);border-radius:3px;padding:20px 20px 12px}
.toc-h,.sc-h{font:600 .7rem var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;padding-bottom:10px;border-bottom:1px solid var(--ink)}
.toc ol{counter-reset:t}
.toc li{counter-increment:t;border-bottom:1px solid var(--hair)}
.toc li:last-child{border:0}
.toc a{display:flex;gap:10px;align-items:baseline;min-height:44px;padding:9px 0;color:var(--ink);text-decoration:none;font-size:.98rem;line-height:1.3}
.toc a::before{content:counter(t,decimal-leading-zero);font:400 .66rem var(--mono);color:var(--vio);flex:none}
.toc a:hover{color:var(--vio)}
.sidecard{background:var(--vio-d);color:var(--on-d);border:1px solid var(--ink);border-radius:3px;padding:20px;box-shadow:6px 6px 0 var(--ink)}
.sc-h{border-color:rgba(241,235,251,.45);color:#fff}
.sidecard p{font-size:.98rem;line-height:1.45}
.sidecard .btn{width:100%;background:#fff;color:var(--ink);border-color:#fff}
.sidecard .btn:hover{background:var(--vio);color:#fff}
.docgrid .sheet{margin-bottom:26px}

/* pricing */
.pricehead{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.ph-copy{min-width:0}
.sub{font:italic 500 1.2rem/1.4 var(--disp);margin:22px 0 26px;padding-left:16px;border-left:4px solid var(--vio)}
.tariff{margin:0;border-top:5px double var(--ink);border-bottom:1px solid var(--ink);min-width:0;align-self:center}
.tariff div{display:flex;align-items:baseline;gap:12px;padding:15px 0;border-bottom:1px solid var(--hair)}
.tariff div:last-child{border:0}
.tariff dt{order:1;font:400 .72rem/1.35 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mut);min-width:0}
.tariff div::after{content:"";order:2;flex:1;min-width:16px;border-bottom:2px dotted var(--mut);transform:translateY(-4px)}
.tariff dd{order:3;margin:0;font:600 clamp(1.7rem,3vw,2.5rem)/1 var(--disp);letter-spacing:-.02em;white-space:nowrap}
.tariff div:first-child dd,.tariff div:nth-child(2) dd{color:var(--vio)}
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr);gap:22px;align-items:end}
.calc>div{min-width:0}
.calc label{color:var(--on-d2)}
.calc input{background:rgba(255,255,255,.07);border-color:rgba(241,235,251,.6);color:#fff;height:60px;font-size:1.2rem}
.calc input:focus{outline-color:#d9c6ff;background:rgba(255,255,255,.12)}
.calc output{display:flex;align-items:center;height:60px;padding:0 0 0 20px;border-left:5px double #c9b3ff;font:600 clamp(2.4rem,5vw,3.6rem)/1 var(--disp);letter-spacing:-.02em;color:#fff}

/* article */
.arthead h1{font-size:clamp(2.2rem,5.4vw,4.6rem);max-width:19ch;margin-bottom:clamp(22px,3vw,38px)}
.art-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,4vw,60px);align-items:start}
.art-top .lead{font-size:clamp(1.2rem,1.8vw,1.42rem)}
.takeaways{background:var(--vio-t);border:1px solid var(--ink);border-top:5px double var(--ink);padding:20px 24px 14px;min-width:0}
.takeaways h2{font:600 .72rem var(--mono);letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px}
.takeaways ol{counter-reset:k}
.takeaways li{counter-increment:k;display:flex;gap:14px;padding:11px 0;border-top:1px solid var(--hair);font-size:1.02rem;line-height:1.42}
.takeaways li::before{content:counter(k);font:italic 500 1.5rem/1 var(--disp);color:var(--vio);flex:none;width:1ch}

/* 404 */
.nf{text-align:left}
.nf-bars{display:grid;gap:10px;margin-bottom:30px;max-width:520px}
.nf-bars span{height:22px;background:var(--ink)}
.nf-bars span:nth-child(2){width:72%}
.nf-bars span:nth-child(3){width:38%;background:var(--vio)}
.nf .lead{margin-bottom:28px}
.nf-links{display:flex;flex-wrap:wrap;gap:0 26px;margin-top:34px;border-top:1px solid var(--ink);padding-top:8px}
.nf-links a,.foot-links a{display:inline-flex;align-items:center;min-height:44px}

/* footer */
.foot{max-width:1232px;margin:0 auto;padding:10px 16px 40px}
.foot-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px 48px;border-top:5px double var(--ink);padding-top:26px}
.foot-brand .logo{font-size:1.5rem}
.foot-brand p{margin:8px 0 0;color:var(--mut);font-style:italic}
.foot-links{display:flex;flex-wrap:wrap;gap:0 26px;justify-content:flex-end;align-content:start}
.foot-links a{color:var(--ink);font:400 .74rem var(--mono);letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.foot-links a:hover{text-decoration:underline}
.legal{grid-column:1/-1;margin:0;padding-top:16px;border-top:1px solid var(--hair);font-size:.9rem;color:var(--mut)}

@media(max-width:1000px){
.hero-grid,.pricehead,.art-top{grid-template-columns:minmax(0,1fr)}
.keyhero{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "form" "ben"}
.kh-form{max-width:520px;width:100%}
.docgrid{grid-template-columns:minmax(0,1fr)}
.side{position:static;max-height:none;overflow:visible;padding:0;margin-bottom:26px}
.facts{grid-template-columns:repeat(3,minmax(0,1fr))}
.facts div:nth-child(4){border-left:0;padding-left:0}
.facts div:nth-child(n+4){border-top:1px solid var(--hair)}
.closing{grid-template-columns:minmax(0,1fr)}
.cols{grid-template-columns:repeat(2,minmax(0,1fr))}
.cols li,.cols li:nth-child(3n+1){border-left:1px solid var(--hair);padding-left:24px}
.cols li:nth-child(odd){border-left:0;padding-left:0}
.cols li:nth-child(n+3){border-top:1px solid var(--hair);padding-top:26px}
.cols.three{grid-template-columns:minmax(0,1fr)}
.cols.three li{border-left:0;padding:22px 0;border-top:1px solid var(--hair)}
.cols.three li:first-child{border-top:0;padding-top:0}
}
@media(max-width:860px){
.nav{display:none;position:absolute;left:0;right:0;top:calc(100% + 12px);flex-direction:column;align-items:stretch;gap:0;margin:0;background:var(--paper);border:1.5px solid var(--ink);border-radius:22px;padding:8px 18px;box-shadow:0 4px 0 var(--ink)}
.nav.open{display:flex}
.nav a{min-height:52px;padding:0 4px;border-radius:0;border-bottom:1px solid var(--hair);font-size:.84rem}
.nav a:last-child{border-bottom:0}
.nav a[aria-current]{box-shadow:none}
.burger{display:inline-flex}
.btn.cta{margin-left:auto}
.stepl{grid-template-columns:minmax(0,1fr)}
.stepl li{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:20px}
.stepl li::before{grid-row:1/3;margin:0;min-width:.7em}
.calc{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.calc>div:last-child{grid-column:1/-1}
.foot-in{grid-template-columns:minmax(0,1fr)}
.foot-links{justify-content:flex-start}
}
@media(max-width:640px){
body{font-size:1.06rem}
.top{padding:0 10px}
.pill{padding:5px 5px 5px 10px;gap:6px}
.logo{font-size:.86rem;gap:8px}
.top .logo span{max-width:10ch}
.btn.cta{padding:0 13px;font-size:.68rem;letter-spacing:.05em;min-height:44px}
main{padding:22px 10px 4px}
.sheet{margin-bottom:18px}
.sheet::before{top:8px;right:10px}
.masthead{flex-wrap:wrap;gap:4px 12px;padding-right:34px}
.mh-rule{display:none}
.sh{gap:12px}
.bar{width:34px;height:9px}
.facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.facts div,.facts div:nth-child(4){border-left:1px solid var(--hair);padding:14px 0 12px 14px;border-top:1px solid var(--hair)}
.facts div:nth-child(odd){border-left:0;padding-left:0}
.facts div:nth-child(-n+2){border-top:0}
.facts div:last-child:nth-child(odd){grid-column:1/-1}
.cols,.clips,.kh-ben{grid-template-columns:minmax(0,1fr)}
.cols li,.cols li:nth-child(3n+1),.cols li:nth-child(odd){border-left:0;padding:22px 0;border-top:1px solid var(--hair)}
.cols li:first-child{border-top:0;padding-top:0}
.clips li{padding:20px 20px 18px}
.clips li:nth-child(n){transform:none}
.uses{padding:0 2px}
.form{padding:20px 18px 18px;box-shadow:6px 6px 0 var(--vio)}
.codebox{box-shadow:5px 5px 0 var(--vio)}
.btns .btn.big{flex:1 1 100%}
.ans{padding-right:0}
.calc{grid-template-columns:minmax(0,1fr)}
.calc output{border-left:0;border-top:5px double #c9b3ff;padding:14px 0 0;height:auto}
.tariff dd{font-size:1.6rem}
.prose.long{font-size:1.1rem}
.dc::first-letter,.prose.long>p:first-of-type::first-letter{font-size:3.5em}
.keyhero h1{font-size:2.1rem;margin-bottom:14px}
.keyhero{gap:22px}
.keyhero .lead{font-size:1.06rem}
.crumbs{margin-bottom:14px}
}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*,*::before,*::after{animation:none!important;transition:none!important}
}
