:root{--paper:#eef0ec;--ink:#161b26;--quiet:#5d6470;--cobalt:#2343d6;--rest:#c4c8cf;--rule:#cfd3cc;--ok:#1f7a4d;--bad:#b3261e;
--cond:"IBM Plex Sans Condensed","Arial Narrow",sans-serif;--sans:"IBM Plex Sans",system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,monospace}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--sans);overflow-x:clip}
a{color:var(--cobalt);text-underline-offset:3px}
.page{max-width:1080px;margin:0 auto;padding:0 32px}.narrow{max-width:46em;margin:0 auto;padding:40px 20px 80px}
@media(max-width:600px){.page{padding:0 16px}}
.top{display:flex;justify-content:space-between;align-items:baseline;padding:26px 0;flex-wrap:wrap;gap:12px}
.top .mark{font:600 19px/1 var(--cond);color:var(--ink);text-decoration:none}
.top nav{display:flex;gap:20px;font-size:15px;flex-wrap:wrap}
h1,h2,h3{font-family:var(--cond);font-weight:600;letter-spacing:-.01em;margin:0}
h1{font-size:clamp(38px,5.4vw,72px);line-height:1.02;max-width:14ch;margin:24px 0 20px;text-wrap:balance}
.narrow h1{font-size:clamp(32px,4.4vw,44px);max-width:none}
h2{font-size:clamp(26px,3.2vw,38px);line-height:1.08;margin:64px 0 16px}
.narrow h2{font-size:24px;margin:40px 0 10px}
h3{font-size:20px;margin:28px 0 8px}
p,li{max-width:40em}.muted,.crumb{color:var(--quiet);font-size:15px}
.figure{font:600 clamp(28px,3.6vw,44px)/1.1 var(--cond);color:var(--cobalt);margin:8px 0}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0;border-top:1px solid var(--ink);margin-top:24px}
.plan{padding:24px 24px 28px 0}.plan+.plan{padding-left:24px;border-left:1px solid var(--rule)}
@media(max-width:640px){.plan+.plan{padding-left:0;border-left:0;border-top:1px solid var(--rule)}}
.plan .price{font:600 34px/1 var(--cond);margin:10px 0}.plan ul{padding-left:1.1em;margin:12px 0}
.btn{display:inline-block;background:var(--cobalt);color:#fff;border:0;padding:12px 20px;font:500 16px/1 var(--sans);cursor:pointer;text-decoration:none}
.btn.alt{background:transparent;color:var(--cobalt);border:1px solid var(--cobalt)}.btn:disabled{opacity:.5;cursor:default}
form .row{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}
input[type=email],input[type=text],input[type=password]{font:400 16px/1.4 var(--sans);padding:11px 12px;border:1px solid var(--ink);background:#fff;min-width:0;flex:1 1 260px}
label.chk{display:flex;gap:8px;align-items:flex-start;font-size:15px;margin:8px 0}
.msg{min-height:1.6em;font-size:15px}.msg.ok{color:var(--ok)}.msg.bad{color:var(--bad)}
pre,code{font-family:var(--mono);font-size:14px}pre{background:#fff;border:1px solid var(--rule);padding:14px;overflow-x:auto;max-width:100%}
pre.key{font-size:15px;word-break:break-all;white-space:pre-wrap}
table{border-collapse:collapse;width:100%;font-size:15px;margin:12px 0}th,td{text-align:left;padding:8px 10px 8px 0;border-bottom:1px solid var(--rule);vertical-align:top}
th{font-weight:500;color:var(--quiet)}.tablewrap{overflow-x:auto}
.foot{border-top:1px solid var(--rule);margin-top:80px;padding:24px 0 48px;color:var(--quiet);font-size:14px;display:flex;gap:18px;flex-wrap:wrap}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--rest);margin-right:8px}.dot.ok{background:var(--ok)}.dot.bad{background:var(--bad)}
.hp{position:absolute;left:-9999px}
/* 12-nov · estándar web (staging) */
.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;align-items:start;padding:8px 0 24px}
@media(max-width:880px){.hero{grid-template-columns:minmax(0,1fr)}}
.intro{font-size:19px;max-width:34em}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 10px}
.proof{border-left:3px solid var(--cobalt);padding:4px 0 4px 16px;margin:22px 0}
.proof .figure{margin:0}.proof p{margin:6px 0 0}
.pricebox{border-top:1px solid var(--ink);padding-top:14px;margin-top:6px}
.pricebox .price{font:600 34px/1 var(--cond)}
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;border-top:1px solid var(--ink);margin-top:20px}
.pillar{padding:20px 22px 24px 0}.pillar+.pillar{padding-left:22px;border-left:1px solid var(--rule)}
@media(max-width:640px){.pillar+.pillar{padding-left:0;border-left:0;border-top:1px solid var(--rule)}}
.pillar .n{font:500 13px/1 var(--mono);color:var(--quiet)}
.pillar h3{margin-top:10px}
.uses{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:16px}
.use{background:#fff;border:1px solid var(--rule);padding:16px}.use h3{margin:0 0 6px;font-size:18px}.use p{margin:0;font-size:15px;color:var(--quiet)}
.use code{font-size:13px}
.codepair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
@media(max-width:880px){.codepair{grid-template-columns:minmax(0,1fr)}}
.codepair pre{margin:0;font-size:13px}
.label{font:500 13px/1 var(--mono);color:var(--quiet);margin:0 0 6px}
details{border-top:1px solid var(--rule);padding:14px 0}details:last-of-type{border-bottom:1px solid var(--rule)}
summary{cursor:pointer;font-weight:500}details p{margin:10px 0 0}
.band{background:var(--ink);color:var(--paper);padding:36px 32px;margin-top:64px}.band h2{margin-top:0;color:var(--paper)}
.band a.btn{background:var(--paper);color:var(--ink)}.band .muted{color:#b9bec7}
@media(max-width:600px){.band{padding:28px 16px}}
.pg{background:#fff;border:1px solid var(--rule);padding:18px;max-width:760px}
.pg-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.pg-t{font:500 14px/1 var(--sans);padding:8px 12px;border:1px solid var(--rule);background:var(--paper);cursor:pointer}.pg-t.on{border-color:var(--cobalt);color:var(--cobalt)}
.pg textarea,.pg input[type=text],.pg select{width:100%;font:400 15px/1.4 var(--sans);padding:10px;border:1px solid var(--ink);background:#fff;margin:4px 0 10px}
.pg-row{display:flex;gap:10px;flex-wrap:wrap}.pg-row select{flex:0 0 170px}.pg-row input{flex:1 1 220px}
.pg .label{display:block;margin-top:6px}
.pg-bars .bar{display:grid;grid-template-columns:minmax(80px,30%) 1fr 64px;gap:10px;align-items:center;font-size:14px;margin:6px 0}
.pg-bars .bar i{display:block;height:10px;background:var(--cobalt);min-width:1px}.pg-bars .bar b{font:500 13px var(--mono);text-align:right}
.pg pre{max-height:260px;font-size:12px}
.plans{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
