/* Home page only. Builds on site.css (tokens, type, top bar, buttons, footer). */
html[lang=bg] .hero h1 { font-size:clamp(40px,5.6vw,76px); line-height:.98; }
/* hero: one account, two sides */
.hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); padding:44px 0 104px; }
.hero h1 { grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); border-bottom:2px solid var(--ink); }
.hero h1 span { display:block; padding:0 44px 24px 0; }
.hero h1 span + span { padding:0 0 24px 44px; }
.hero-a, .hero-sheet { padding-right:44px; }
.hero-b, .hero-chat { padding-left:44px; border-left:1px solid var(--ink); }
.hero-a, .hero-b { padding-top:26px; padding-bottom:36px; }
.hero .intro { font-size:21px; line-height:1.42; max-width:25em; }
.hero .cta-row { margin-top:26px; }
.hero .fine { margin-top:16px; }
.hero .fine a { text-decoration:underline; text-underline-offset:3px; }
.hero-sheet .fine, .hero-chat .fine { margin-top:14px; }

/* ledger paper */
.sheet { position:relative; overflow:hidden; background:var(--sheet); border:1px solid var(--rule); border-radius:3px; font-size:15px; line-height:1.4; box-shadow:0 22px 44px -30px #183c3470; font-variant-numeric:tabular-nums; }
.sheet-head { display:flex; justify-content:space-between; gap:16px; padding:13px 20px 12px; font-size:14px; font-weight:700; border-bottom:1.5px solid var(--ink); }
.sheet-head span + span { font-weight:500; color:var(--ink-2); text-align:right; }
.lines { list-style:none; }
.lines li { display:grid; grid-template-columns:4.3em minmax(0,1fr) auto; column-gap:12px; padding:10px 20px 11px; border-bottom:1px solid var(--rule); }
.lines .d { color:var(--ink-2); }
.lines .who { font-weight:700; }
.lines .amt { text-align:right; white-space:nowrap; }
.lines .doc { grid-column:2 / -1; margin-top:1px; }
.lines mark { color:inherit; padding:0 .2em; margin-left:-.2em; background:linear-gradient(var(--lime),var(--lime)) no-repeat 0 62% / 100% 68%; -webkit-box-decoration-break:clone; box-decoration-break:clone; }
.lines .ask { font-style:normal; font-weight:700; color:var(--warn); margin-right:.55em; }
.sheet-foot { padding:18px 20px 20px; min-height:86px; font-weight:700; max-width:55%; }
.stamp { position:absolute; right:20px; bottom:14px; transform:rotate(-6deg); color:var(--pen); border:2px solid currentColor; border-radius:7px; padding:11px 18px 10px; text-align:center; outline:1px solid currentColor; outline-offset:-5px; mix-blend-mode:multiply; }
.stamp b { display:block; font:700 25px/1 var(--display); letter-spacing:.09em; text-transform:uppercase; }
.stamp span { display:block; margin-top:4px; font-size:12px; font-weight:600; }
.sheet .row { display:flex; justify-content:space-between; align-items:baseline; gap:16px; padding:9px 20px; border-bottom:1px solid var(--rule); }
.sheet .row b { font-weight:600; white-space:nowrap; }
.sheet .row small { font-size:13px; color:var(--ink-2); margin-left:6px; }
.sheet .row.total { border-bottom:0; border-top:1.5px solid var(--ink); margin-top:-1px; font-weight:700; padding-top:11px; padding-bottom:12px; }
.sheet .row.total b { font-weight:700; }

/* the month reconciles itself once, on arrival */
@keyframes hl { from { background-size:0 68%; } to { background-size:100% 68%; } }
@keyframes ink-in { from { opacity:0; } to { opacity:1; } }
@keyframes press { from { opacity:0; transform:rotate(-6deg) scale(1.55); } to { opacity:1; transform:rotate(-6deg) scale(1); } }
.sheet.play mark { animation:hl .5s cubic-bezier(.2,.7,.2,1) both; animation-delay:calc(var(--i) * .36s + .5s); }
.sheet.play .ask { animation:ink-in .25s both; animation-delay:calc(var(--j) * .36s + .5s); }
.sheet.play .sheet-foot { animation:ink-in .3s both; animation-delay:3.5s; }
.sheet.play .stamp { animation:press .2s cubic-bezier(.3,1.5,.5,1) both; animation-delay:3.9s; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .sheet.play * { animation:none !important; } }

/* AI CFO: an example conversation */
.cfo-preview { background:var(--surface); border:1px solid var(--border-strong); border-radius:3px; box-shadow:0 22px 44px -30px #183c3470; scroll-margin-top:24px; font-size:15px; line-height:1.45; }
.cfo-top { display:flex; align-items:center; gap:12px; padding:13px 20px 12px; border-bottom:1.5px solid var(--ink); }
.cfo-avatar { width:26px; height:26px; display:grid; place-items:center; border-radius:4px; background:var(--ink); color:var(--lime); font:700 21px/1 var(--display); padding-bottom:2px; }
.cfo-top strong { font-size:14px; font-weight:700; }
.cfo-top small { font-size:14px; color:var(--ink-2); margin-left:8px; }
.cfo-status { display:none; }
.cfo-choices { padding:16px 20px 0; }
.cfo-choices > span { display:block; font-size:14px; color:var(--ink-2); margin-bottom:9px; }
.cfo-buttons { display:flex; flex-wrap:wrap; gap:8px; }
.cfo-question { border:1px solid var(--ink); background:transparent; border-radius:30px; padding:7px 15px; font-size:15px; font-weight:500; cursor:pointer; }
.cfo-question[aria-pressed=true] { background:var(--ink); color:var(--paper); }
.cfo-question:hover { background:var(--sheet); }
.cfo-question[aria-pressed=true]:hover { background:var(--ink); }
#cfo-response { padding:20px 20px 4px; min-height:318px; }
.cfo-user { background:var(--sheet); border-radius:12px 12px 2px 12px; padding:10px 15px; margin:0 0 16px auto; width:fit-content; max-width:92%; }
.cfo-answer .label { display:block; font-size:13px; font-weight:700; color:var(--ink-2); }
.cfo-answer > p { margin:4px 0 16px; }
.cfo-result { border-top:1.5px solid var(--ink); padding-top:12px; font-variant-numeric:tabular-nums; }
.cfo-result > span { display:block; font-size:14px; color:var(--ink-2); }
.cfo-result > strong { display:block; font:600 46px/1.05 var(--display); margin:2px 0 10px; }
#cfo-rows > div { display:flex; justify-content:space-between; gap:14px; border-top:1px solid var(--line); padding:7px 0; }
#cfo-rows b { font-weight:600; white-space:nowrap; }
.cfo-answer p.cfo-source { font-size:14px; color:var(--ink-2); margin:10px 0 14px; }
.cfo-example { display:none; }

/* bands */
.band { padding:112px 0; border-top:1px solid var(--line); }
.band > h2 { max-width:15em; }
.lead { font-size:21px; line-height:1.42; max-width:30em; margin-top:22px; }
.split { display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:72px; align-items:start; }
.split .sheet { margin-top:10px; }
.split .fine { margin-top:14px; }
.steps { list-style:none; counter-reset:step; margin-top:44px; }
.steps li { counter-increment:step; display:grid; grid-template-columns:62px minmax(0,1fr); padding:20px 0 22px; border-top:1px solid var(--line); }
.steps li::before { content:counter(step); font:600 46px/.95 var(--display); grid-row:1 / span 2; }
.steps p { grid-column:2; margin-top:4px; color:var(--ink-2); max-width:34em; }
.steps.across { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:48px; margin-top:56px; }
.steps.across li { display:block; border-top:1px solid var(--ink); padding:18px 0 0; }
.steps.across li::before { display:block; margin-bottom:12px; }
.band .cta-row { margin-top:36px; }

/* what's included, by how often it happens */
.cadence { margin-top:64px; }
.cad { display:grid; grid-template-columns:minmax(0,3fr) minmax(0,9fr); gap:56px; padding:34px 0 46px; border-top:1px solid var(--ink); }
.cad-name { font:600 42px/1 var(--display); letter-spacing:-.01em; }
.cad-side .sheet { margin-top:22px; font-size:14px; }
.cad-side .sheet .row, .cad-side .sheet-head { padding-left:15px; padding-right:15px; }
.cad-side .sheet-head { font-size:13px; }
.items { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 56px; }
.item p { margin-top:6px; color:var(--ink-2); font-size:16px; line-height:1.5; }
.item .by { display:block; margin-top:9px; color:var(--pen); font-size:15px; font-weight:700; }
.fold > summary { display:none; }
.fold > .items { margin-top:30px; }
.band > .fine { margin-top:6px; }

/* who does what */
.duty { width:100%; border-collapse:collapse; margin-top:56px; text-align:left; font-size:16px; line-height:1.4; }
.duty th, .duty td { padding:15px 28px 16px 0; vertical-align:top; border-bottom:1px solid var(--line); font-weight:400; }
.duty thead th { font-size:15px; font-weight:700; border-bottom:1px solid var(--ink); padding-bottom:10px; }
.duty tbody th { font-weight:700; width:17%; }
.duty td { width:27%; }
.duty .ac { color:var(--pen); font-weight:600; }
.duty thead .ac { font-weight:700; }
.duty .you { color:var(--ink-2); }
.duty td:last-child, .duty th:last-child { padding-right:0; }
.duty td:empty::after { content:'–'; color:var(--ink-3); }

/* tools, walkthrough */
.tools { margin-top:56px; font-size:16px; color:var(--ink-2); }
.tools b { color:var(--ink); font-weight:700; }
.agent-walkthrough { margin-top:36px; border:1px solid var(--rule); border-radius:3px; background:var(--sheet); }
.agent-walkthrough > summary { list-style:none; display:flex; justify-content:space-between; align-items:center; gap:20px; padding:20px 24px; font-size:19px; font-weight:700; cursor:pointer; }
.agent-walkthrough > summary::-webkit-details-marker { display:none; }
.agent-walkthrough > summary span { font-size:26px; font-weight:400; line-height:1; }
.agent-walkthrough[open] > summary span { transform:rotate(45deg); }
.walkthrough-body { padding:6px 24px 26px; }
.walkthrough-body .demo { padding-top:8px; }
.walkthrough-body h2 { font-size:clamp(30px,3.4vw,44px); }
.walkthrough-body .kicker { font-size:14px; font-weight:700; color:var(--ink-2); }
.walkthrough-body .lede { font-size:16px; color:var(--ink-2); max-width:40em; margin-top:10px; }
.walkthrough-body .replay { border-radius:4px; }
.demo-note { font-size:14px; color:var(--ink-2); margin-top:18px; }

/* walkthrough: tuning carried over from the previous shared stylesheet */
.demo .head-row{margin-bottom:32px}
.demo .hero-note{font-size:10px;color:var(--ink-2)}
.demo .replay{border-radius:5px}
.demo .dframe{border-radius:9px}
.demo .dchrome{background:#f4f6ef}
.demo .brand-mark{display:grid;place-items:center;background:var(--ink);color:var(--paper);width:30px;height:30px;border-radius:6px}
.demo .dstep{border-radius:5px;box-shadow:none}
.demo .dstep.active{box-shadow:none}
.demo .chip-mini{display:inline-flex;border-radius:4px;padding:3px 7px;font-size:10px}
.demo .chip-mini.pos{background:var(--pos-soft);color:var(--pos)}
.demo .chip-mini.warn{background:var(--warn-soft);color:var(--warn)}
.demo .pos{color:var(--pos)}
.demo .neg{color:var(--neg)}
.demo .spark{width:85px;height:18px;stroke:var(--pos);fill:none}
.demo .dstep .n{font-family:var(--text)}
.demo .dstep .dd{color:#63725f}

/* questions */
.faq-band { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:72px; align-items:start; }
.faq details { border-bottom:1px solid var(--line); }
.faq details:first-child { border-top:1px solid var(--ink); }
.faq summary { cursor:pointer; list-style:none; position:relative; padding:19px 40px 19px 0; font-size:19px; font-weight:700; line-height:1.3; }
.faq summary::-webkit-details-marker { display:none; }
.faq summary::after { content:'+'; position:absolute; right:2px; top:14px; font-size:26px; font-weight:400; }
.faq details[open] summary::after { content:'−'; }
.faq p { color:var(--ink-2); margin:0 0 22px; max-width:38em; }
.faq p a { text-decoration:underline; text-underline-offset:3px; color:var(--ink); }

/* closing */
.closing { padding:104px 0 112px; border-top:2px solid var(--ink); display:grid; grid-template-columns:minmax(0,8fr) minmax(0,4fr); gap:56px; align-items:end; }
.closing h2 { font-size:clamp(40px,6vw,84px); line-height:.96; }
.closing p { font-size:21px; line-height:1.42; margin-top:22px; max-width:28em; }
.closing p + p { font-size:17px; margin-top:16px; }
.closing .button { justify-self:end; }
@media (max-width:1040px) {
  .split, .faq-band { grid-template-columns:minmax(0,1fr); gap:44px; }
  .split .sheet { max-width:460px; }
  .cad { grid-template-columns:minmax(0,1fr); gap:26px; }
  .cad-side { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:start; }
  .cad-side .sheet { margin-top:0; }
  .closing { grid-template-columns:minmax(0,1fr); gap:36px; }
  .closing .button { justify-self:start; }
}
@media (max-width:860px) {
  .hero { grid-template-columns:minmax(0,1fr); padding:30px 0 72px; }
  .hero h1 { display:block; padding-bottom:20px; }
  .hero h1 span, .hero h1 span + span { padding:0; }
  .hero-a, .hero-sheet { padding-right:0; }
  .hero-b, .hero-chat { padding-left:0; border-left:0; }
  .hero-a { padding:20px 0 30px; order:1; }
  .hero-sheet { order:2; }
  .hero-b { order:3; }
  .hero-chat { order:4; }
  .hero-b { padding:44px 0 22px; }
  .hero .intro { font-size:19px; }
  .hero .button { flex:1 1 100%; }
  .band { padding:72px 0; }
  .lead, .closing p { font-size:19px; }
  .steps.across { grid-template-columns:minmax(0,1fr); gap:0; margin-top:36px; }
  .steps.across li { display:grid; border-top:1px solid var(--line); padding:20px 0 22px; }
  .steps.across li::before { margin-bottom:0; }
  .cadence { margin-top:44px; }
  .cad { padding:26px 0 30px; }
  .cad-name { font-size:36px; }
  .cad-side { grid-template-columns:minmax(0,1fr); gap:18px; }
  .items { grid-template-columns:minmax(0,1fr); gap:24px; }
  .fold { margin-top:22px; border-top:1px solid var(--line); }
  .fold > summary { display:flex; justify-content:space-between; align-items:center; list-style:none; padding:15px 0 0; font-weight:700; cursor:pointer; }
  .fold > summary::-webkit-details-marker { display:none; }
  .fold > summary span { font-size:24px; font-weight:400; line-height:1; }
  .fold[open] > summary span { transform:rotate(45deg); }
  .fold > .items { margin-top:22px; }
  .duty { margin-top:36px; }
  .duty thead { display:none; }
  .duty tr { display:block; padding:14px 0 15px; border-top:1px solid var(--line); }
  .duty tbody tr:first-child { border-top:1px solid var(--ink); }
  .duty th, .duty td, .duty tbody th { display:block; width:auto; padding:0; border:0; }
  .duty tbody th { font-size:19px; margin-bottom:5px; }
  .duty { font-size:16px; }
  .duty td { margin-top:4px; }
  .duty td::before { content:attr(data-who) ': '; font-weight:700; }
  .duty td:empty { display:none; }
  .agent-walkthrough > summary { padding:16px 18px; font-size:17px; }
  .walkthrough-body { padding:4px 12px 20px; }
  .walkthrough-body .demo .dstep .nm { font-size:9px; }
  .walkthrough-body .demo-controls { flex-wrap:wrap; }
  .walkthrough-body .dbody { padding:8px; }
  .walkthrough-body .dchrome { padding:10px 7px; }
  .walkthrough-body .dchrome .url { padding:4px; font-size:8px; }
  .closing { padding:72px 0 80px; }
  .closing .button { width:100%; }
}
@media (max-width:380px) {
  .walkthrough-body .demo .steprail { grid-template-columns:repeat(3,1fr); }
  .walkthrough-body .demo .dkpis { grid-template-columns:minmax(0,1fr); }
  .lines li { padding-left:14px; padding-right:14px; }
  .sheet-head, .sheet-foot, .sheet .row { padding-left:14px; padding-right:14px; }
  .stamp { right:12px; }
}
