/* ===== Minute 1000 · platform shell (landing, auth, cert) ===== */
:root{
  --paper:#F1F4F3; --grid:#DFE6E4; --ink:#0E1B26; --ink-soft:#41525F;
  --ultra:#1F3BFF; --ultra-dim:#D9DEFF; --done:#0E9F6E; --done-dim:#DCF2E8;
  --card:#FFFFFF; --line:#C9D3D0;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
  --sans:'IBM Plex Sans',system-ui,sans-serif;
  --disp:'Archivo',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:var(--sans);color:var(--ink);background:var(--paper);
  background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);
  background-size:32px 32px;line-height:1.55;
}
a{color:var(--ultra)} ::selection{background:var(--ultra);color:#fff}

.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:18px;padding:12px 24px;background:var(--ink);color:#fff}
.nav .brand{font-family:var(--mono);font-size:13px;letter-spacing:.08em;color:#fff;text-decoration:none}
.nav .brand b{color:#8FA0FF}
.nav .spacer{flex:1}
.nav a.link{color:#C7D2DA;text-decoration:none;font-size:14px}
.nav a.link:hover{color:#fff}
.btn{display:inline-block;font-family:var(--mono);font-size:14px;letter-spacing:.04em;padding:12px 22px;border:2px solid var(--ink);background:var(--ultra);color:#fff;text-decoration:none;cursor:pointer;box-shadow:4px 4px 0 var(--ink);transition:transform .08s,box-shadow .08s}
.btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.btn.ghost{background:#fff;color:var(--ink)}
.btn.small{padding:8px 14px;font-size:12px}
.btn.green{background:var(--done)}

/* ---- landing ---- */
.hero{max-width:1040px;margin:0 auto;padding:72px 24px 40px;text-align:left}
.kicker{font-family:var(--mono);font-size:13px;letter-spacing:.14em;color:var(--ultra);text-transform:uppercase}
.hero h1{font-family:var(--disp);font-weight:900;text-transform:uppercase;letter-spacing:-.01em;font-size:clamp(34px,6vw,72px);line-height:.98;margin:14px 0 18px}
.hero h1 .u{color:var(--ultra)}
.hero p.lede{font-size:19px;color:var(--ink-soft);max-width:640px}
.odom{display:flex;gap:8px;margin:28px 0}
.odom span{font-family:var(--mono);font-size:clamp(28px,5vw,52px);font-weight:600;background:var(--ink);color:#fff;padding:6px 14px;border-radius:6px;box-shadow:inset 0 -14px 0 rgba(255,255,255,.06)}
.odom span.u{background:var(--ultra)}
.heroctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px;align-items:center}
.pricehint{font-family:var(--mono);font-size:13px;color:var(--ink-soft)}

.strip{border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);background:var(--card)}
.strip .in{max-width:1040px;margin:0 auto;padding:18px 24px;display:flex;gap:28px;flex-wrap:wrap;font-family:var(--mono);font-size:13px}
.strip .in span b{color:var(--ultra)}

.sect{max-width:1040px;margin:0 auto;padding:56px 24px}
.sect h2{font-family:var(--disp);font-weight:900;text-transform:uppercase;font-size:clamp(24px,3.4vw,38px);margin-bottom:8px}
.sect p.sub{color:var(--ink-soft);max-width:620px;margin-bottom:28px}

.chgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.chcard{background:var(--card);border:2px solid var(--ink);padding:14px 16px;box-shadow:4px 4px 0 var(--ink)}
.chcard .n{font-family:var(--mono);font-size:12px;color:var(--ultra);display:block;margin-bottom:4px}
.chcard b{font-size:15px;line-height:1.3;display:block}
.chcard .r{font-family:var(--mono);font-size:11px;color:var(--ink-soft)}

.how{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.how .step{background:var(--card);border:2px solid var(--ink);padding:18px;box-shadow:4px 4px 0 var(--ink)}
.how .step .num{font-family:var(--mono);font-size:12px;background:var(--ultra);color:#fff;padding:2px 8px}
.how .step h3{font-family:var(--disp);text-transform:uppercase;font-size:17px;margin:10px 0 6px}
.how .step p{font-size:14px;color:var(--ink-soft)}

.pricebox{max-width:460px;background:var(--card);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ultra);padding:30px}
.pricebox .amt{font-family:var(--mono);font-size:56px;font-weight:600}
.pricebox .per{font-family:var(--mono);font-size:13px;color:var(--ink-soft)}
.pricebox ul{list-style:none;margin:18px 0 24px}
.pricebox li{padding:7px 0;border-bottom:1px dashed var(--line);font-size:15px}
.pricebox li::before{content:"■ ";color:var(--done);font-size:11px}

.faq details{background:var(--card);border:2px solid var(--ink);margin-bottom:10px}
.faq summary{cursor:pointer;font-weight:600;padding:14px 16px}
.faq details p{padding:0 16px 14px;color:var(--ink-soft);font-size:15px}

.foot{border-top:2px solid var(--ink);margin-top:40px}
.foot .in{max-width:1040px;margin:0 auto;padding:22px 24px;font-family:var(--mono);font-size:12px;color:var(--ink-soft);display:flex;gap:20px;flex-wrap:wrap}

/* ---- auth cards ---- */
.authwrap{max-width:420px;margin:60px auto;padding:0 20px}
.authcard{background:var(--card);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink);padding:28px}
.authcard h1{font-family:var(--disp);text-transform:uppercase;font-size:26px;margin-bottom:4px}
.authcard p.hint{font-size:14px;color:var(--ink-soft);margin-bottom:18px}
label{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.06em;margin:14px 0 5px;text-transform:uppercase}
input[type=text],input[type=email],input[type=password]{width:100%;padding:11px 12px;border:2px solid var(--ink);font-family:var(--sans);font-size:15px;background:#fff}
input:focus{outline:3px solid var(--ultra-dim)}
.err{background:#FDE8E8;border:2px solid #C81E1E;color:#7f1212;padding:10px 12px;font-size:14px;margin-bottom:14px}
.ok{background:var(--done-dim);border:2px solid var(--done);color:#06623f;padding:10px 12px;font-size:14px;margin-bottom:14px}
.authcard .btn{width:100%;margin-top:20px;text-align:center}
.authswap{text-align:center;font-size:14px;margin-top:16px}

/* ---- buy page ---- */
.buywrap{max-width:560px;margin:60px auto;padding:0 20px}

/* ---- certificate ---- */
.certpage{max-width:820px;margin:50px auto;padding:0 20px}
.cert{background:var(--card);border:4px solid var(--ink);box-shadow:10px 10px 0 var(--ultra);padding:clamp(28px,6vw,64px);position:relative}
.cert .watermark{position:absolute;top:18px;right:22px;font-family:var(--mono);font-size:11px;color:var(--ink-soft);text-align:right}
.cert .ck{font-family:var(--mono);font-size:13px;letter-spacing:.14em;color:var(--ultra);text-transform:uppercase}
.cert h1{font-family:var(--disp);font-weight:900;text-transform:uppercase;font-size:clamp(26px,4.6vw,44px);line-height:1.02;margin:12px 0 6px}
.cert .name{font-family:var(--disp);font-weight:900;font-size:clamp(30px,6vw,56px);color:var(--ultra);margin:26px 0 4px;word-wrap:break-word}
.cert .nameline{border-top:3px solid var(--ink);width:min(420px,100%);padding-top:8px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}
.cert .stats{display:flex;gap:26px;flex-wrap:wrap;margin:30px 0 8px;font-family:var(--mono);font-size:13px}
.cert .stats b{display:block;font-size:22px;color:var(--ink)}
.cert .seal{margin-top:26px;display:inline-block;font-family:var(--mono);font-size:12px;border:2px solid var(--done);color:var(--done);padding:8px 14px;letter-spacing:.1em}
.certtools{margin-top:22px;background:var(--card);border:2px solid var(--ink);padding:18px;box-shadow:4px 4px 0 var(--ink)}
.certtools h2{font-family:var(--disp);text-transform:uppercase;font-size:18px;margin-bottom:10px}
.certtools .row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.certtools input[type=text]{flex:1;min-width:200px}

@media(max-width:640px){ .hero{padding-top:44px} }
