:root{--paper:#f4efe6;--cream:#fffbf5;--ink:#1a1614;--muted:#6b645c;--line:#e6dfd4;--forest:#2c4a3e;--forest-deep:#1c3028;--gold:#b8956a;--danger:#8b3a2a;--font-serif:"Fraunces","Times New Roman",serif;--font-sans:"IBM Plex Sans","Helvetica Neue",sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0}body{min-height:100vh;display:flex;flex-direction:column;font-family:var(--font-sans);color:var(--ink);background:var(--paper);line-height:1.5}#root,main.page{flex:1 1}#root{display:flex;flex-direction:column}a{color:var(--forest)}button,input,select{font-family:inherit}.site-footer,.site-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 4.5rem}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:2;background:var(--paper);border-bottom:1px solid var(--line)}.site-footer{background:var(--forest-deep);color:var(--cream);font-size:.85rem}.site-footer a{color:#c5d0c8}.brand{font-family:var(--font-serif);font-weight:600;font-size:1.25rem;color:var(--ink);text-decoration:none;display:flex;gap:.6rem;align-items:center}.brand i{width:10px;height:10px;background:var(--forest);display:inline-block}.nav{display:flex;gap:1.4rem;align-items:center;flex-wrap:wrap;font-size:.9rem}.nav a{color:var(--muted);text-decoration:none}.nav a:hover{color:var(--ink)}.nav a[aria-current=page]{color:var(--ink);font-weight:600;box-shadow:inset 0 -2px 0 var(--forest)}.btn{display:inline-block;background:var(--forest);color:var(--cream);text-decoration:none;border:0;padding:.7rem 1.15rem;border-radius:3px;font-weight:600;cursor:pointer}.btn.ghost{background:var(--cream);color:var(--ink);border:1px solid var(--line)}.nav a.btn,.nav a.btn:hover{color:var(--cream);box-shadow:none;font-weight:600}button.btn{font-size:1rem}[hidden]{display:none!important}h3{font-family:var(--font-serif);font-weight:600;margin:.15rem 0 .35rem;font-size:1.15rem}.step p,.step ul{margin:.35rem 0}.step ul{padding-left:1.1rem}.step .btn{margin-top:.9rem}.hero{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:3rem;gap:3rem;padding:4.5rem;align-items:center}.kicker{letter-spacing:.12em;color:var(--gold);font-size:.75rem}.kicker,h1,h2{font-weight:600}h1,h2{font-family:var(--font-serif);line-height:1.15}h1{font-size:clamp(2rem,4vw,3.2rem);margin:.6rem 0 1rem}.lead{color:var(--muted);font-size:1.1rem;max-width:36rem}.actions{display:flex;gap:.75rem;margin:1.4rem 0 .6rem;flex-wrap:wrap}.hint{color:var(--muted);font-size:.9rem}.card{border:1px solid var(--line);padding:1.3rem}.band,.card{background:var(--cream)}.band{padding:4rem 4.5rem}.grid-4{grid-template-columns:repeat(4,1fr);grid-gap:1.1rem}.grid-2,.grid-4{display:grid;gap:1.1rem}.grid-2{grid-template-columns:1fr 1fr;grid-gap:1.1rem}.step{background:var(--paper);border:1px solid var(--line);padding:1.3rem}.mono{font-family:var(--font-mono);color:var(--gold);font-size:.8rem}.pro{background:var(--forest-deep);color:var(--cream)}.pro .hint,.pro .muted{color:#c2ccc6}.pro .btn{background:var(--cream);color:var(--forest-deep);margin-top:.8rem}.price{font-family:var(--font-serif);font-size:2.4rem;margin:.3rem 0}.page{padding:3.2rem 4.5rem 5rem}.page-inner{max-width:44rem}.page-inner.wide{max-width:960px}.page h1{font-size:2.4rem;margin-top:0}.page li,.page p{color:var(--muted)}.page .pro,.page .pro li,.page .pro p{color:var(--cream)}.page .pro .hint{color:#c2ccc6}.card-head{display:flex;justify-content:space-between;gap:1rem}.label-row{display:flex;gap:.8rem;align-items:center;border:1px solid var(--line);background:#fff;padding:.7rem .9rem;margin-top:.5rem}.label-row strong{font-family:var(--font-mono);font-size:.85rem;display:block}.bars{display:flex;gap:1.5px;align-items:flex-end;height:36px}.bars span{background:var(--ink);width:2px;display:block}.lock{background:var(--paper);padding:.7rem .9rem;font-size:.85rem;color:var(--forest);font-weight:600}.err,.lock,.ok{margin-top:.7rem}.err,.ok{font-size:.9rem;padding:.7rem}.ok{background:#e4eee8;color:var(--forest)}.err{background:#f6e4de;color:var(--danger)}.buy-page input{width:100%;margin:.35rem 0 .8rem;padding:.55rem;border:1px solid var(--line);background:#fff;color:var(--ink)}.buy-page label{display:block;font-weight:600;margin-top:.2rem;color:var(--ink)}.key-block,.pay-block{background:var(--cream);border:1px solid var(--line);padding:1.3rem 1.4rem 1.4rem;margin-top:1.2rem}.key-block{margin-top:1rem}.key-block h2{font-size:1.25rem;margin:0 0 .4rem}@media (max-width:900px){.band,.hero,.page,.site-footer,.site-header{padding-left:1.25rem;padding-right:1.25rem}.grid-2,.grid-4,.hero{grid-template-columns:1fr}}