/* Public homepage palette is independent of the visitor's app theme. */
.site-home{--site-paper:#faf9f6;--site-ink:#242b29;--site-muted:#616761;--site-line:#dedfd6;--site-mint:#c8ead8;--site-lilac:#e9e3f5;--site-accent:#245946;--site-peach:#f1e1cb;--site-screen-paper:#fff;--site-window-paper:#f4f5f1;--site-window-dot:#bec3ba;--site-overlay:#faf9f6f5;--site-overlay-border:#ffffffb3;--site-shadow:#272d2320;background:var(--site-paper);color:var(--site-ink);overflow:clip;font-size:16px;line-height:1.6}
.site-home a:focus-visible,.site-home select:focus-visible,.site-home summary:focus-visible{outline:3px solid var(--site-accent);outline-offset:5px}.site-home a{text-underline-offset:5px}.site-width{width:min(1240px,calc(100% - 96px));margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:28px}.site-home .brand{font-size:27px;letter-spacing:-1.2px}.site-home .brand-mark{background:var(--site-mint);color:var(--site-accent);border-radius:10px}.site-header nav{display:flex;align-items:center;gap:25px}.site-signin{font-size:14px;text-decoration:none}.site-button{display:inline-flex;align-items:center;justify-content:center;gap:32px;border-radius:9px;padding:16px 23px;font-size:16px;font-weight:600;background:var(--site-ink);color:var(--site-paper);text-decoration:none;transition:background .2s,transform .2s}.site-button:hover{background:var(--site-accent);transform:translateY(-2px)}.site-button-small{padding:10px 17px;font-size:13px;gap:8px}.site-button-outline{background:transparent;border:1px solid var(--site-ink);color:var(--site-ink)}.site-button-outline:hover{color:var(--site-paper)}.site-language select{background:transparent;color:var(--site-muted);border:0;font-size:12px;padding:8px 2px;max-width:145px}.site-hero{display:flex;gap:50px;align-items:flex-end;padding-block:76px 95px}.site-hero-copy{max-width:850px}.site-kicker{font-size:14px;letter-spacing:.02em;display:block;font-weight:550}.site-kicker>span{color:var(--site-accent);margin-right:8px;font-size:22px;vertical-align:middle}.site-hero h1{font-size:clamp(48px,6.6vw,88px);letter-spacing:-4px;font-weight:550;line-height:1.06;margin-top:23px}.site-hero h1>span{color:var(--site-accent)}.site-hero p{font-size:20px;line-height:1.65;max-width:580px;color:var(--site-muted);margin-top:28px}.site-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.site-text-link{font-weight:550;text-decoration:none;font-size:14px}.site-text-link:hover{text-decoration:underline}.site-text-link span{margin-left:8px}.site-home small{color:var(--site-muted);font-size:12px;line-height:1.6}.site-hero-copy>small{margin-top:14px}.site-hero-note{margin-left:auto;padding:0 20px 30px 0;flex-shrink:0;transform:rotate(-5deg)}.site-hero-note p{font-size:18px;line-height:1.5;color:var(--site-accent);margin:14px 0 0}.site-note-line{display:block;width:65px;height:2px;background:var(--site-accent);transform:rotate(-15deg)}.site-home h2{font-size:clamp(30px,3.3vw,44px);font-weight:550;letter-spacing:-1.5px;line-height:1.18}
.site-section-number{font-size:12px;color:var(--site-accent);font-weight:600;letter-spacing:.04em}
.site-companion{display:flex;align-items:center;gap:55px;max-width:860px;padding-block:90px}.site-companion>img{object-fit:contain;flex-shrink:0}.site-companion h2{margin-top:14px;font-size:32px}.site-companion p{color:var(--site-muted);margin-top:20px;line-height:1.8}.site-faq{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:80px;border-top:1px solid var(--site-line)}.site-faq h2{font-size:32px;max-width:280px}.site-faq details{border-bottom:1px solid var(--site-line);padding:18px 0}.site-faq details:first-child{padding-top:0}.site-faq summary{cursor:pointer;font-weight:550;font-size:15px}.site-faq details p{color:var(--site-muted);font-size:14px;line-height:1.8;margin:16px 0 8px}.site-final{text-align:center;background:var(--site-lilac);border-radius:20px;padding:70px 24px;margin-block:30px 65px}.site-final h2{font-size:52px;margin-top:20px}.site-final p{color:var(--site-muted);margin:22px 0 28px}.site-final-account{display:block;margin-top:22px;font-size:13px;text-decoration:none}.site-final-account:hover{text-decoration:underline}.site-footer{display:flex;align-items:center;gap:30px;padding:10px 0 42px;font-size:12px;color:var(--site-muted)}.site-footer .brand{font-size:21px;color:var(--site-ink)}.site-footer .brand-mark{width:30px;height:30px}.site-footer>a:last-child{margin-left:auto}.site-animate{transition:opacity .6s ease,transform .6s ease;opacity:.35;transform:translateY(22px)}.site-visible{opacity:1;transform:none}

/* Each chapter holds its screenshot for a short, natural scroll before the next
   chapter takes over. No wheel/touch interception or mandatory scroll snapping. */
.site-scene{--scene-surface:var(--site-lilac);position:relative;min-height:150svh;view-timeline-name:--site-scene;view-timeline-axis:block}
.site-stage{position:sticky;top:0;min-height:700px;height:100svh;overflow:clip;isolation:isolate;background:var(--scene-surface)}
.site-budget-scene{--scene-surface:var(--site-peach)}
.site-transactions-scene{--scene-surface:var(--site-mint)}
.site-feature-visual{position:absolute;inset:5% 3% 5% 3%;display:flex;align-items:center;justify-content:center;transform-origin:70% 50%}
.site-screen{width:100%;max-width:1600px;background:var(--site-screen-paper);border:1px solid var(--site-line);border-radius:12px;overflow:hidden;box-shadow:0 24px 70px var(--site-shadow)}
.site-window{position:relative;z-index:1;height:32px;background:var(--site-window-paper);border-bottom:1px solid var(--site-line);display:flex;align-items:center;gap:5px;padding:0 12px;color:var(--site-muted);font-size:10px}
.site-window i{width:6px;height:6px;background:var(--site-window-dot);border-radius:50%}
.site-window>span{margin-left:8px}
.site-screen img{width:100%;height:auto;display:block}
.site-preview .site-feature-visual{inset:4% 7% 7%}
.site-preview .site-screen{max-width:1220px;max-height:88%;}
.site-feature .site-screen{max-height:100%;}
.site-feature .site-feature-visual{inset:6% 3% 6% 20%;align-items:flex-start}
.site-cashflow-scene .site-screen{max-width:1120px}
.site-cashflow-scene .site-screen img{margin-top:-180px}
.site-feature-copy{position:absolute;z-index:1;left:clamp(24px,5vw,96px);bottom:9%;width:min(440px,calc(100% - 48px));padding:32px;background:var(--site-overlay);border:1px solid var(--site-overlay-border);border-radius:16px;box-shadow:0 18px 64px var(--site-shadow);backdrop-filter:blur(18px)}
.site-feature h2{margin-top:15px;font-size:clamp(30px,3.2vw,46px)}
.site-feature-copy>p{font-size:15px;color:var(--site-muted);line-height:1.8;margin-top:20px}
.site-feature-copy>.site-text-link{display:inline-block;margin-top:24px}
.site-preview-art{position:absolute;right:7%;bottom:10%;display:flex;align-items:center;gap:10px;padding:8px 16px;background:var(--site-overlay);border:1px solid var(--site-overlay-border);border-radius:18px;backdrop-filter:blur(14px);pointer-events:none;box-shadow:0 15px 50px var(--site-shadow)}
.site-clippy{width:150px;height:150px;object-fit:contain;order:2}
.site-clippy-note{font-size:14px;transform:rotate(-5deg);color:var(--site-accent)}
.site-clippy-note span{display:block;text-align:right;font-size:24px}
.site-caption{position:absolute;bottom:2%;left:7%;right:7%;color:var(--site-muted);font-size:11px;line-height:1.6;background:var(--scene-surface);padding:8px 12px;border-radius:6px;width:fit-content;max-width:86%}
@supports(animation-timeline:view()){
 @keyframes site-scene-pan{from{transform:translateY(35px) scale(.97)}to{transform:translateY(-35px) scale(1.03)}}
 .site-feature-visual{animation:site-scene-pan linear both;animation-timeline:--site-scene;animation-range:entry 0% exit 100%}
}
@media(max-width:1000px){
 .site-width{width:calc(100% - 56px)}.site-hero{padding-block:65px 80px}.site-hero-note{display:none}.site-faq{gap:40px}
 .site-feature-copy{width:360px;padding:25px}.site-feature h2{font-size:34px}.site-feature .site-feature-visual{inset:8% 3% 8% 9%}
}
@media(max-width:680px){
 .site-width{width:calc(100% - 36px)}.site-header{flex-wrap:wrap;gap:15px;padding-block:22px}.site-header nav{gap:16px;flex-wrap:wrap}.site-home .brand{font-size:23px}.site-language{position:absolute;right:18px;top:26px}.site-language select{max-width:112px;font-size:10px}.site-header nav{width:100%;justify-content:flex-end}
 .site-hero{padding-block:37px 55px}.site-hero h1{font-size:54px;letter-spacing:-2.6px}.site-hero p{font-size:17px;margin-top:22px}.site-actions{gap:20px}.site-button{font-size:14px;gap:22px;padding:14px 19px}.site-button-small{padding:9px 15px;font-size:12px}.site-text-link{font-size:12px}.site-hero-copy>small{max-width:270px}
 .site-scene{min-height:120svh}.site-stage{min-height:740px;height:100svh}
 .site-feature .site-feature-visual,.site-preview .site-feature-visual{inset:6% 12px auto;min-height:240px;display:block;transform-origin:50% 0}
 .site-screen,.site-preview .site-screen{max-height:none;border-radius:8px}.site-window{height:24px;font-size:8px}
 .site-feature .site-screen{width:180%;max-width:none;max-height:390px}.site-preview .site-screen{width:150%;max-width:none}
 .site-transactions-scene .site-screen img{margin-top:-90px}.site-cashflow-scene .site-screen img{margin-top:-115px}
 .site-feature-copy{left:18px;bottom:6%;width:calc(100% - 36px);padding:24px;border-radius:12px}.site-feature h2{font-size:32px}.site-feature-copy>p{font-size:14px;line-height:1.75;margin-top:16px}.site-feature-copy>.site-text-link{margin-top:18px}
 .site-preview-art{right:18px;bottom:17%;padding:5px 12px}.site-clippy{width:125px;height:125px}.site-clippy-note{font-size:12px}.site-caption{bottom:5%;left:18px;right:18px;max-width:calc(100% - 36px);font-size:10px}
 .site-companion{padding-block:60px;gap:20px;align-items:flex-start}.site-companion>img{width:95px;height:115px}.site-companion h2{font-size:27px}.site-companion p{font-size:14px;line-height:1.75}.site-faq{grid-template-columns:1fr;gap:30px;padding-block:50px}.site-faq h2{max-width:none;font-size:29px}.site-final{padding:45px 20px;margin-block:20px 40px}.site-final h2{font-size:38px}.site-final p{font-size:14px}.site-footer{flex-wrap:wrap;gap:15px;padding-bottom:28px}.site-footer>span{order:3;width:100%}
}
/* Short windows, enlarged text and reduced motion use ordinary flowing sections
   so overlays cannot strand content below a sticky viewport. */
@media(max-height:740px),(prefers-reduced-motion:reduce){
 .site-scene{min-height:0}.site-stage{position:relative;height:auto;min-height:0;padding:40px 24px;display:grid;gap:24px}
 .site-feature .site-feature-visual,.site-preview .site-feature-visual{position:relative;inset:auto;min-height:0;animation:none;transform:none;display:block;order:2}
 .site-feature .site-screen,.site-preview .site-screen{width:100%;max-height:none;max-width:1400px;margin-inline:auto}
 .site-transactions-scene .site-screen img,.site-cashflow-scene .site-screen img{margin-top:0}
 .site-feature-copy{position:relative;inset:auto;max-width:600px;width:100%;margin-inline:auto;order:1}.site-feature h2{font-size:34px}
 .site-preview-art{position:relative;inset:auto;width:fit-content;margin-left:auto;order:1}.site-caption{position:relative;inset:auto;max-width:100%;order:3;padding:0;margin-inline:auto}
}
@media(prefers-reduced-motion:reduce){.site-home *{scroll-behavior:auto!important;transition:none!important;animation:none!important}.site-animate{opacity:1;transform:none}}
.site-home .site-button.demo-entry{display:inline-flex;width:auto;margin:0}
