:root{
  --paper:#f4e9cf; --paper2:#efe0bb; --card:#fbf5e4; --ink:#3a2d1f; --ink2:#5d4c38; --mute:#8a7a62;
  --rust:#a8472a; --rust2:#8c3a21; --line:#cdb98e; --line2:#e2d3ae; --ok:#3d6b3a; --warn:#b4731a; --bad:#a3302a;
  --serif: "Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Times New Roman",serif;
  --sans: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --r:10px; --shadow:0 1px 0 rgba(58,45,31,.06),0 8px 24px rgba(58,45,31,.10);
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
body{background-image:radial-gradient(1200px 600px at 50% -10%,#fbf3de 0,transparent 70%)}
a{color:var(--rust);text-decoration:none} a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,.serif{font-family:var(--serif);font-weight:600;letter-spacing:.01em;line-height:1.2;margin:0 0 .5em}
h1{font-size:clamp(2rem,4.6vw,3.3rem)} h2{font-size:clamp(1.5rem,3vw,2.2rem)} h3{font-size:1.2rem}
p{margin:0 0 1em}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.caps{font-family:var(--serif);text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;color:var(--ink2)}
.rule{height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);border:0;margin:0}

/* nav */
.nav{position:sticky;top:0;z-index:20;background:rgba(244,233,207,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:22px;height:64px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-family:var(--serif);font-weight:700;letter-spacing:.2em;text-transform:uppercase;font-size:.95rem}
.brand:hover{text-decoration:none}
.brand img{width:38px;height:38px}
.nav .links{display:flex;gap:20px;margin-left:auto;align-items:center}
.nav .links a.l{color:var(--ink2);font-size:.92rem}
.nav .links a.l:hover{color:var(--rust);text-decoration:none}
@media(max-width:820px){.nav .links a.l{display:none}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--ink);background:transparent;color:var(--ink);padding:10px 18px;border-radius:8px;font:600 .95rem var(--sans);cursor:pointer;transition:.15s}
.btn:hover{background:var(--ink);color:var(--paper);text-decoration:none}
.btn.primary{background:var(--rust);border-color:var(--rust);color:#fff}
.btn.primary:hover{background:var(--rust2);border-color:var(--rust2)}
.btn.small{padding:6px 12px;font-size:.85rem}
.btn.big{padding:14px 26px;font-size:1.05rem}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.btn.danger{border-color:var(--bad);color:var(--bad)} .btn.danger:hover{background:var(--bad);color:#fff}

/* hero */
.hero{padding:56px 0 40px}
.hero .grid{display:grid;grid-template-columns:1.05fr 1fr;gap:44px;align-items:center}
@media(max-width:900px){.hero .grid{grid-template-columns:1fr}}
.hero .lead{font-size:1.15rem;color:var(--ink2);max-width:36em}
.hero .cta{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 18px}
.plate{border:2px solid var(--ink);border-radius:4px;box-shadow:var(--shadow);background:#fff;overflow:hidden;position:relative}
.plate img{width:100%}
.plate .cap{position:absolute;right:10px;bottom:8px;font-family:var(--serif);font-style:italic;font-size:.75rem;color:var(--ink2);background:rgba(244,233,207,.85);padding:1px 6px}

/* trial counter */
.counter{display:inline-block;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:12px 16px;min-width:300px;box-shadow:var(--shadow)}
.counter .top{display:flex;justify-content:space-between;align-items:baseline;gap:14px;font-size:.92rem}
.counter .num{font-family:var(--serif);font-size:1.8rem;font-weight:700;color:var(--rust);line-height:1}
.bar{height:9px;background:var(--line2);border-radius:99px;overflow:hidden;margin-top:9px}
.bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--rust),#c9683f);border-radius:99px;transition:width .6s}
.counter .sub{font-size:.8rem;color:var(--mute);margin-top:6px}

/* sections */
section{padding:64px 0}
section.alt{background:var(--paper2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sec-head{max-width:46em;margin:0 auto 38px;text-align:center}
.sec-head p{color:var(--ink2);font-size:1.05rem}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
@media(max-width:900px){.grid3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.grid3,.grid2{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:var(--shadow)}
.card h3{margin-bottom:.35em}
.card p:last-child{margin-bottom:0}
.card .ico{width:38px;height:38px;border:1.5px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-weight:700;color:var(--rust);margin-bottom:12px;background:var(--paper)}
.muted{color:var(--mute)}

/* mock app window */
.win{background:#fff;border:1px solid #bdae8a;border-radius:10px;box-shadow:0 18px 50px rgba(58,45,31,.22);overflow:hidden;font:13px/1.4 var(--sans);color:#2a2a2a}
.win .bar2{display:flex;gap:6px;align-items:center;padding:9px 12px;background:#efe6cf;border-bottom:1px solid #d8c9a2}
.win .bar2 i{width:11px;height:11px;border-radius:50%;background:#c9b88f;display:block}
.win .bar2 b{margin-left:10px;font-weight:600;color:#5d4c38;font-size:12px}
.win .tabs{display:flex;gap:2px;padding:8px 10px 0;background:#f8f2e2;border-bottom:1px solid #e3d6b4;overflow:hidden;white-space:nowrap}
.win .tabs span{padding:6px 10px;border-radius:6px 6px 0 0;color:#7b6c54;font-size:12px}
.win .tabs span.on{background:#fff;color:var(--rust);font-weight:600;border:1px solid #e3d6b4;border-bottom-color:#fff;margin-bottom:-1px}
.win .body{padding:14px}
.win table{width:100%;border-collapse:collapse;font-size:12.5px}
.win th{background:#f5eedb;text-align:left;padding:6px 8px;font-weight:600;color:#5d4c38;border-bottom:1px solid #e3d6b4}
.win td{padding:5px 8px;border-bottom:1px solid #f0e8d2}
.win td.n,.win th.n{text-align:right;font-variant-numeric:tabular-nums}
.win tr.tot td{font-weight:700;background:#faf5e6}
.win tr.sec td{font-weight:700;color:#8c3a21;background:#fdf9ee;text-transform:uppercase;font-size:11px;letter-spacing:.06em}
.pill{display:inline-block;padding:1px 8px;border-radius:99px;font-size:11px;font-weight:600}
.pill.ok{background:#e1eddc;color:#2f5a2c} .pill.warn{background:#f8e8c9;color:#8a5a0c} .pill.bad{background:#f4d9d5;color:#8c2a22}
.note-ill{font-size:.78rem;color:var(--mute);text-align:center;margin-top:10px;font-style:italic}

/* workflow steps */
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:900px){.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.steps{grid-template-columns:1fr}}
.steps li{list-style:none;counter-increment:s;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px 16px 16px;position:relative}
.steps li::before{content:counter(s);position:absolute;top:-14px;left:14px;width:30px;height:30px;border-radius:50%;background:var(--rust);color:#fff;font:700 .95rem var(--serif);display:grid;place-items:center}
.steps{padding:14px 0 0;margin:0}
.steps h3{font-size:1.02rem;margin-top:6px}
.steps p{font-size:.9rem;color:var(--ink2);margin:0}

/* pricing */
.packs{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
@media(max-width:1000px){.packs{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.packs{grid-template-columns:repeat(2,1fr)}}
.pack{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px 14px;text-align:center;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:6px}
.pack .lbl{font-family:var(--serif);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:var(--mute)}
.pack .usd{font-family:var(--serif);font-size:2rem;font-weight:700}
.pack small{color:var(--ink2)}
.pack .btn{margin-top:auto}
.trialcard{display:grid;grid-template-columns:1.2fr 1fr;gap:26px;align-items:center;background:var(--card);border:2px solid var(--ink);border-radius:var(--r);padding:26px;margin-bottom:26px;box-shadow:var(--shadow)}
@media(max-width:800px){.trialcard{grid-template-columns:1fr}}
ul.tick{list-style:none;padding:0;margin:0 0 1em}
ul.tick li{padding-left:26px;position:relative;margin:6px 0}
ul.tick li::before{content:"";position:absolute;left:3px;top:.5em;width:12px;height:6px;border-left:2px solid var(--ok);border-bottom:2px solid var(--ok);transform:rotate(-45deg)}

/* coming soon */
.soon{position:relative;overflow:hidden}
.soon .tag{position:absolute;top:14px;right:-34px;transform:rotate(35deg);background:var(--ink);color:var(--paper);font:700 .68rem var(--serif);letter-spacing:.18em;text-transform:uppercase;padding:4px 40px}
.soon .seal{width:64px;height:64px;border-radius:50%;border:2px solid var(--ink);display:grid;place-items:center;margin-bottom:12px;background:radial-gradient(circle,#f8efd8,#e9d7aa);font-family:var(--serif);font-weight:700;color:var(--rust);font-size:1.3rem}
.soon h3{letter-spacing:.14em;text-transform:uppercase;font-size:1.05rem}
.soon .meta{font-size:.82rem;color:var(--mute);margin-top:8px}
.notify{display:flex;gap:8px;margin-top:12px}

/* faq */
details{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:14px 18px;margin-bottom:10px}
summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px}
summary::after{content:"+";font-family:var(--serif);font-size:1.3rem;color:var(--rust);line-height:1}
details[open] summary::after{content:"–"}
details p{margin:10px 0 0;color:var(--ink2)}

footer{background:var(--ink);color:#e8dcc0;padding:40px 0 30px;font-size:.9rem}
footer a{color:#e8c9a8}
footer .cols{display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;align-items:flex-start}
footer .small{opacity:.7;font-size:.8rem;margin-top:22px}

/* forms (account/admin) */
label.f{display:block;font-size:.85rem;font-weight:600;color:var(--ink2);margin:0 0 4px}
input.t,select.t,textarea.t{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fffdf6;color:var(--ink)}
input.t:focus,select.t:focus{outline:2px solid #d9a58f;border-color:var(--rust)}
.field{margin-bottom:14px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:560px){.row2{grid-template-columns:1fr}}
.msg{padding:10px 14px;border-radius:8px;font-size:.92rem;margin:0 0 14px;border:1px solid}
.msg.err{background:#f8e3df;border-color:#e2b4ad;color:#7e241d}
.msg.ok{background:#e6f0e1;border-color:#b9d2b1;color:#2c5629}
.msg.info{background:#f7ecd0;border-color:#e0cd98;color:#6b5113}
.authbox{max-width:460px;margin:40px auto}
.tabsw{display:flex;border-bottom:1px solid var(--line);margin-bottom:20px}
.tabsw button{flex:1;background:none;border:0;border-bottom:3px solid transparent;padding:12px;font:600 1rem var(--serif);color:var(--mute);cursor:pointer;letter-spacing:.06em}
.tabsw button.on{color:var(--ink);border-bottom-color:var(--rust)}
.dash{display:grid;grid-template-columns:1fr 340px;gap:22px;align-items:start;padding:28px 0 60px}
@media(max-width:900px){.dash{grid-template-columns:1fr}}
.stack>*+*{margin-top:18px}
.bal{font-family:var(--serif);font-size:2.6rem;font-weight:700;line-height:1}
.kv{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:.92rem}
.kv dt{color:var(--mute)} .kv dd{margin:0}
.step{display:flex;gap:14px;align-items:flex-start}
.step .n{flex:0 0 32px;height:32px;border-radius:50%;background:var(--rust);color:#fff;font:700 1rem var(--serif);display:grid;place-items:center}
.step.done .n{background:var(--ok)}
.step.off{opacity:.55}
table.t{width:100%;border-collapse:collapse;font-size:.88rem}
table.t th{text-align:left;color:var(--mute);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--line)}
table.t td{padding:7px 8px;border-bottom:1px solid var(--line2);vertical-align:top}
.scroll{overflow-x:auto}
.draft{background:#f7ecd0;border:1px solid #e0cd98;padding:10px 14px;border-radius:8px;font-size:.88rem;margin-bottom:20px}
.hidden{display:none!important}

/* showcase rows */
.showcase{margin-top:54px;display:flex;flex-direction:column;gap:64px}
.show{display:grid;grid-template-columns:1.7fr 1fr;gap:38px;align-items:center}
.show.rev{grid-template-columns:1fr 1.7fr}
.show.rev .shot{order:2}
@media(max-width:900px){.show,.show.rev{grid-template-columns:1fr;gap:20px}.show.rev .shot{order:0}}
.shot{margin:0;background:#fff;border:1px solid #bdae8a;border-radius:10px;box-shadow:0 18px 50px rgba(58,45,31,.22);overflow:hidden;cursor:zoom-in}
.shot .bar2{display:flex;gap:6px;align-items:center;padding:9px 12px;background:#efe6cf;border-bottom:1px solid #d8c9a2}
.shot .bar2 i{width:11px;height:11px;border-radius:50%;background:#c9b88f;display:block}
.shot .bar2 b{margin-left:10px;font:600 12px var(--sans);color:#5d4c38}
.shot img{width:100%;height:auto}
.story h3{font-size:1.55rem}
.story p{color:var(--ink2)}
.grid3.mini .card{padding:16px 18px}
.grid3.mini h3{font-size:1.02rem}
.grid3.mini p{font-size:.9rem;color:var(--ink2)}
.lightbox{position:fixed;inset:0;background:rgba(36,28,18,.86);z-index:60;display:grid;place-items:center;padding:24px;cursor:zoom-out}
.lightbox img{max-width:min(1500px,96vw);max-height:92vh;border-radius:8px;box-shadow:0 20px 70px rgba(0,0,0,.5);background:#fff}
.btn{white-space:nowrap}

/* ---- beta site additions ---- */
.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:var(--shadow);position:relative}
.panel label{display:block;font-weight:600;font-size:.9rem;margin:12px 0 4px}
.panel label:first-child{margin-top:0}
.panel .row{display:flex;gap:10px;flex-wrap:wrap}
.panel .row .t{flex:1 1 220px}
.panel .two{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.panel .btn{margin-top:16px}
.panel .row .btn{margin-top:0}
input.t,select.t,textarea.t{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fffdf6;color:var(--ink)}
input.t:focus,select.t:focus,textarea.t:focus{outline:2px solid var(--rust);outline-offset:1px}
.filecard{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px 20px;margin-top:14px;box-shadow:var(--shadow)}
.filecard h3{margin:0 0 2px}.filecard .meta{font-size:.85rem;color:var(--mute)}
.filecard code{font-size:.72rem;word-break:break-all;color:var(--ink2)}
.filecard form{margin:0}.filecard .btn{margin-top:0}
.filetip{font-size:.88rem;color:var(--ink2);margin:6px 2px 0}
@media(max-width:640px){.panel .two{grid-template-columns:1fr}}
/* website assistant */
#botBtn{position:fixed;right:18px;bottom:18px;z-index:40;border:0;border-radius:999px;background:var(--rust);color:#fff;font:600 .95rem var(--sans);padding:12px 18px;box-shadow:var(--shadow);cursor:pointer}
#botBtn:hover{background:var(--rust2)}
#botBox{position:fixed;right:18px;bottom:76px;z-index:41;width:min(380px,calc(100vw - 36px));height:min(520px,calc(100vh - 110px));background:var(--card);border:1px solid var(--ink);border-radius:12px;display:none;flex-direction:column;box-shadow:0 12px 40px rgba(58,45,31,.3);overflow:hidden}
#botBox.open{display:flex}
#botBox header{background:var(--ink);color:#f1e6c9;padding:10px 14px;display:flex;justify-content:space-between;align-items:center;font-family:var(--serif);letter-spacing:.04em}
#botBox header button{background:none;border:0;color:#f1e6c9;font-size:1.3rem;cursor:pointer;line-height:1}
#botLog{flex:1;overflow:auto;padding:12px;display:flex;flex-direction:column;gap:8px}
.bmsg{max-width:88%;padding:8px 12px;border-radius:10px;font-size:.92rem;white-space:pre-wrap;word-wrap:break-word}
.bmsg.u{align-self:flex-end;background:var(--rust);color:#fff}
.bmsg.a{align-self:flex-start;background:#fffdf6;border:1px solid var(--line)}
#botForm{display:flex;gap:8px;padding:10px;border-top:1px solid var(--line)}
#botForm input{flex:1;font:inherit;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fffdf6}
#botForm button{margin:0}
.botnote{font-size:.74rem;color:var(--mute);padding:0 12px 8px}
@media(max-width:520px){.nav .links .btn:not(.primary){display:none}.nav .wrap{gap:10px}.brand{letter-spacing:.1em;font-size:.82rem}}
