/* Keep the primary action visible beside the dashboard preview. */
h1 { font-size: clamp(2.65rem, 4.8vw, 4.15rem); }
.hero { padding-top: 72px; padding-bottom: 78px; }
@media (max-width: 680px) {
  h1 { font-size: clamp(2.35rem, 10vw, 3.3rem); }
  .hero { padding-top: 48px; padding-bottom: 60px; }
}
.lead-section { background: #fff3ec; }
.lead-form { background: white; border: 1px solid #f1ded3; border-radius: 18px; padding: 28px; box-shadow: 0 12px 35px #3923160c; display: flex; flex-direction: column; gap: 14px; }
.lead-form > label:first-child { font-weight: 800; }
.lead-form input[type=email] { width: 100%; min-height: 50px; border: 1px solid #d9d9dd; border-radius: 10px; padding: 12px 14px; font: inherit; }
.lead-form input[type=email]:focus-visible { outline: 3px solid #ff6e3d70; border-color: #ff6e3d; }
.lead-consent { display: flex; align-items: flex-start; gap: 10px; color: #626670; font-size: .85rem; line-height: 1.5; }
.lead-consent input { margin-top: 4px; accent-color: #ff6e3d; }
.lead-form .cta { border: 0; align-self: flex-start; }
.lead-status { min-height: 1.4em; margin: 0; font-size: .85rem; color: #26694b; }
.lead-status.error { color: #a43131; }
.lead-preview-note { margin: 0; color: #7b7e87; font-size: .78rem; line-height: 1.5; }
.lead-trap { position: absolute; left: -9999px; height: 0; overflow: hidden; }
.lead-disabled { opacity: .78; }
.lead-disabled .cta { cursor: not-allowed; box-shadow: none; }
.site-header .container { display: grid; grid-template-columns: auto 1fr auto auto; gap: 12px; }
.header-links { justify-content: center; gap: 22px; }
.header-account { min-height: 42px; display: inline-flex; align-items: center; justify-content: center; padding: 9px 15px; border-radius: 11px; background: #ff6e3d; color: #fff; font: 800 .75rem Manrope,sans-serif; white-space: nowrap; box-shadow: 0 8px 20px #ff6e3d26; }
.header-account:hover { background: #db562b; }
.auth-short { display: none; }
.language-menu { min-width: 142px; height: 42px; display: inline-flex; align-items: center; gap: 8px; padding: 0 11px; border: 1px solid #e8e2dd; border-radius: 12px; background: #fff; color: #62656e; flex: none; }
.language-menu svg { width: 18px; height: 18px; flex: none; }
.language-menu select { min-width: 0; flex: 1; border: 0; outline: 0; appearance: none; background: transparent; color: #333741; font: 700 .78rem Manrope, sans-serif; cursor: pointer; }
.language-menu > span { color: #9a9ca3; transform: translateY(-1px); pointer-events: none; }
.language-menu:focus-within { border-color: #ff9b78; box-shadow: 0 0 0 3px #ff6e3d1f; }
.cashflow-preview { transform: rotate(.45deg); padding: 22px; }
.cashflow-board { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }
.flow-sheet,.balance-sheet { border: 1px solid #eee8e4; border-radius: 15px; padding: 15px; background: #fffdfb; }
.board-label { display: block; min-height: 30px; color: #a05a42; font: 800 .64rem Manrope,sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.money-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 0; border-bottom: 1px solid #f1ece9; color: #7c7f87; font-size: .71rem; }
.money-row strong { color: #343740; font-size: .78rem; white-space: nowrap; }
.money-row.income-row strong { color: #168061; }
.money-row.net-row { border: 0; margin: 8px -7px -5px; padding: 11px 8px; border-radius: 9px; background: #ff6e3d; color: #fff; }
.money-row.net-row strong { color: #fff; }
.balance-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.balance-columns div { background: #fff5f0; border-radius: 10px; padding: 11px 9px; min-width: 0; }
.balance-columns span,.net-worth-row span { display: block; color: #858892; font-size: .65rem; }
.balance-columns strong,.net-worth-row strong { display: block; margin-top: 6px; color: #2f333b; font-size: .78rem; white-space: nowrap; }
.net-worth-row { display: flex; align-items: center; justify-content: space-between; margin-top: 9px; padding: 11px 10px; border-radius: 10px; background: #f3f7f5; }
.net-worth-row strong { margin: 0; color: #168061; }
.cashflow-paths { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 12px 0; }
.cash-path { display: flex; align-items: center; gap: 10px; border-radius: 12px; padding: 12px; }
.cash-path.positive { background: #edf8f3; color: #176f56; }
.cash-path.negative { background: #fff1eb; color: #b94b28; }
.path-icon { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 9px; background: #fff; font-weight: 800; flex: none; }
.cash-path b,.cash-path small { display: block; }
.cash-path b { font: 800 .7rem Manrope,sans-serif; }
.cash-path small { margin-top: 3px; color: #777b83; font-size: .62rem; line-height: 1.3; }
.spreadsheet-preview { width: 100%; max-width: 470px; justify-self: end; padding: 16px; transform: rotate(.35deg); border-radius: 20px; background: #fff; }
.sheet-title { padding: 2px 8px 10px; border-bottom: 1px solid #d7d9dc; text-align: center; color: #15171b; font: 900 .92rem Manrope,sans-serif; letter-spacing: .03em; }
.sheet-upper { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; margin-top: 10px; align-items: stretch; }
.mini-table { overflow: hidden; border: 1px solid #d8dde2; border-radius: 8px; background: #fff; box-shadow: 0 5px 15px #30374408; }
.sheet-header { padding: 6px 7px; border-bottom: 1px solid #d8dde2; text-align: center; font: 900 .66rem Manrope,sans-serif; line-height: 1.15; letter-spacing: .025em; }
.sheet-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(84px,.72fr); min-height: 23px; border-bottom: 1px solid #e2e5e8; color: #2e333b; font-size: .58rem; line-height: 1.2; }
.sheet-row:last-child { border-bottom: 0; }
.sheet-row > span,.sheet-row > strong { display: flex; align-items: center; padding: 4px 6px; }
.sheet-row > strong { justify-content: flex-end; border-left: 1px solid #e2e5e8; font-family: inherit; font-weight: 700; white-space: nowrap; }
.sheet-total { font-weight: 900; }
.sheet-total > span { justify-content: center; }
.income-table .sheet-header,.income-table .sheet-total { background: #d9f1e5; color: #176246; }
.income-table .sheet-row:not(.sheet-total) { background: #f7fbf9; }
.expense-table .sheet-header,.expense-table .sheet-total { background: #ffe5bf; color: #875714; }
.expense-table .sheet-row:not(.sheet-total) { background: #fffaf2; }
.sheet-summary { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; margin-top: 10px; }
.summary-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(88px,.72fr); color: #fff; font: 900 .61rem Manrope,sans-serif; line-height: 1.15; }
.summary-row { overflow: hidden; border-radius: 9px; box-shadow: 0 8px 24px #3a2b2010; }
.summary-row span,.summary-row strong { display: flex; align-items: center; padding: 8px 7px; }
.summary-row span { justify-content: center; text-align: center; }
.summary-row strong { justify-content: flex-end; border-left: 1px solid #ffffff30; white-space: nowrap; }
.summary-row.passive { background: #32856b; }
.summary-row.cash { background: #ff6e3d; }
.sheet-balance { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; margin-top: 13px; }
.asset-table .sheet-header,.asset-table .sheet-total { background: #d8eef7; color: #176984; }
.asset-table .sheet-row:not(.sheet-total) { background: #f7fbfd; }
.liability-table .sheet-header,.liability-table .sheet-total { background: #ffe0d1; color: #994d31; }
.liability-table .sheet-row:not(.sheet-total) { background: #fff9f6; }
.sheet-balance .sheet-row { grid-template-columns: minmax(0,1fr) minmax(96px,.72fr); }
.download-section { overflow: hidden; background: #272a32; color: #fff; }
.download-grid { display: grid; grid-template-columns: 1.16fr .84fr; gap: 70px; align-items: center; }
.download-copy h2 { max-width: 650px; }
.download-copy > p { max-width: 650px; color: #c8cad0; font-size: 1.02rem; line-height: 1.75; }
.store-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.store-badge { min-width: 166px; min-height: 58px; display: inline-flex; align-items: center; gap: 11px; padding: 9px 14px; border: 1px solid #ffffff1f; border-radius: 13px; background: #111319; color: #fff; }
.store-badge[aria-disabled="true"] { opacity: .72; }
.store-badge svg { width: 27px; height: 27px; flex: none; fill: currentColor; }
.store-badge small,.store-badge strong { display: block; }
.store-badge small { margin-bottom: 2px; color: #aeb1b8; font-size: .61rem; line-height: 1; }
.store-badge strong { font-size: .86rem; line-height: 1.2; }
.web-badge { border-color: #ff916d; background: #fff; color: #292c33; }
.web-badge small { color: #d65329; }
.web-badge:hover { transform: translateY(-2px); }
.download-note { margin: 18px 0 0; color: #999da6 !important; font-size: .75rem !important; }
.install-card { padding: 28px; border: 1px solid #ffffff1c; border-radius: 22px; background: linear-gradient(145deg,#363a45,#292c35); box-shadow: 0 28px 70px #0003; }
.install-brand { display: flex; align-items: center; gap: 13px; padding-bottom: 22px; border-bottom: 1px solid #ffffff17; }
.install-brand img { width: 48px; height: 48px; border-radius: 13px; }
.install-brand strong,.install-brand span { display: block; }
.install-brand strong { font-size: 1.05rem; }
.install-brand span { margin-top: 4px; color: #afb2ba; font-size: .72rem; }
.platform-row { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 17px 0; border-bottom: 1px solid #ffffff12; color: #d9dbe0; font-size: .82rem; }
.platform-row:last-child { border: 0; padding-bottom: 0; }
.platform-row b { color: #75d1b3; font-size: .7rem; }
.platform-row b.pending { color: #ffab8f; }
@media (max-width: 600px) {
  .site-header .container { gap: 8px; }
  .header-account { min-height: 38px; padding: 8px 10px; }
  .auth-long { display: none; }
  .auth-short { display: inline; }
  .language-menu { min-width: 112px; height: 38px; padding: 0 9px; }
  .language-menu svg { width: 16px; height: 16px; }
  .cashflow-board,.cashflow-paths { grid-template-columns: 1fr; }
  .spreadsheet-preview { max-width: none; justify-self: stretch; padding: 11px; }
  .sheet-upper,.sheet-summary,.sheet-balance { grid-template-columns: 1fr; }
  .sheet-summary { margin-top: 9px; }
  .sheet-balance { gap: 9px; }
  .sheet-row { font-size: .62rem; }
  .store-actions { display: grid; }
  .store-badge { width: 100%; }
  .install-card { padding: 22px; }
}
@media (max-width: 900px) { .download-grid { grid-template-columns: 1fr; gap: 38px; } }
@media (max-width: 760px) { .header-links { display: none; } .site-header .container { grid-template-columns: auto 1fr auto; } }
