:root{--bg-base:#f5f0e8;--bg-paper:#fffdf8;--bg-dark:#1b2028;--bg-dark-raised:#242b35;--bg-warm:#ede7dc;--rule-light:#d1c7b7;--rule-dark:#3a4250;--rule-ledger:#c4bbab;--text-ink:#1b2028;--text-body:#3d3a36;--text-muted:#6b6357;--text-pale:#9a9088;--text-on-dark:#e8e3da;--text-on-dark-m:#a39e96;--accent-action:#8b2f1b;--accent-hover:#6e2516;--accent-paid:#2e7d56;--accent-paid-bg:#e8f5ee;--accent-due:#b8860b;--accent-due-bg:#fdf5e6;--accent-overdue:#c0392b;--accent-overdue-bg:#fdf0ef;--accent-info:#4a7fb5;--focus-ring:#4a7fb5;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:80px;--space-10:96px;--space-11:120px;--space-12:160px;--max-width:1140px;--max-width-text:720px;--header-height:72px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;scroll-behavior:smooth;font-size:16px}body{background-color:var(--bg-base);color:var(--text-body);font-family:"Source Sans 3",Source Sans Pro,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:400;line-height:1.6;overflow-x:hidden}.t-display{color:var(--text-ink);letter-spacing:-.02em;font-family:Newsreader,Georgia,Times New Roman,serif;font-weight:600;line-height:1.2}.t-display-xl{font-size:clamp(2.25rem,4vw,3.25rem)}.t-display-lg{font-size:clamp(1.75rem,3vw,2.5rem)}.t-display-md{font-size:clamp(1.375rem,2.5vw,1.75rem)}.t-body-lg{font-size:1.125rem;line-height:1.7}.t-body{font-size:1rem;line-height:1.6}.t-body-sm{font-size:.875rem;line-height:1.5}.t-caption{color:var(--text-muted);font-size:.8125rem;line-height:1.4}.t-mono{font-variant-numeric:tabular-nums;font-family:JetBrains Mono,Courier New,monospace}.t-mono-lg{font-variant-numeric:tabular-nums;font-family:JetBrains Mono,Courier New,monospace;font-size:1.5rem;font-weight:600}.t-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-family:"Source Sans 3",sans-serif;font-size:.6875rem;font-weight:600}a{color:var(--accent-action);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-hover)}a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.btn{cursor:pointer;white-space:nowrap;border:2px solid #0000;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:12px 28px;font-family:"Source Sans 3",sans-serif;font-size:.9375rem;font-weight:600;line-height:1;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.btn-primary{background-color:var(--accent-action);color:#fffdf8;border-color:var(--accent-action)}.btn-primary:hover{background-color:var(--accent-hover);border-color:var(--accent-hover);color:#fffdf8}.btn-secondary{color:var(--accent-action);border-color:var(--accent-action);background-color:#0000}.btn-secondary:hover{background-color:var(--accent-action);color:#fffdf8}.btn-dark{background-color:var(--bg-dark);color:var(--text-on-dark);border-color:var(--bg-dark)}.btn-dark:hover{background-color:#2e3640;border-color:#2e3640}.btn-sm{padding:8px 20px;font-size:.8125rem}.btn-lg{padding:16px 36px;font-size:1rem}.container{width:100%;max-width:var(--max-width);padding:0 var(--space-5);margin:0 auto}.container-text{max-width:var(--max-width-text);margin:0 auto}.section{padding:var(--space-10) 0}.section-lg{padding:var(--space-12) 0}.section-dark{background-color:var(--bg-dark);color:var(--text-on-dark)}.section-warm{background-color:var(--bg-warm)}.section-paper{background-color:var(--bg-paper)}.rule{border:none;border-top:1px solid var(--rule-light);margin:var(--space-7) 0}.rule-dark{border-color:var(--rule-dark)}.tag{letter-spacing:.04em;text-transform:uppercase;border-radius:2px;align-items:center;gap:6px;padding:3px 10px;font-family:"Source Sans 3",sans-serif;font-size:.75rem;font-weight:600;line-height:1.4;display:inline-flex}.tag-paid{color:var(--accent-paid);background-color:var(--accent-paid-bg)}.tag-due{color:var(--accent-due);background-color:var(--accent-due-bg)}.tag-overdue{color:var(--accent-overdue);background-color:var(--accent-overdue-bg)}.metrics-panel{background-color:var(--bg-dark);border:1px solid var(--rule-dark);padding:var(--space-5);color:var(--text-on-dark);font-family:JetBrains Mono,monospace}.metrics-panel-header{letter-spacing:.12em;text-transform:uppercase;color:var(--text-on-dark-m);padding-bottom:var(--space-3);border-bottom:1px solid var(--rule-dark);margin-bottom:var(--space-4);font-family:"Source Sans 3",sans-serif;font-size:.6875rem;font-weight:600}.metrics-row{justify-content:space-between;align-items:baseline;padding:6px 0;font-size:.875rem;display:flex}.metrics-row .label{color:var(--text-on-dark-m);font-family:"Source Sans 3",sans-serif;font-size:.8125rem}.metrics-row .value{text-align:right;font-weight:600}.metrics-status-row{gap:var(--space-4);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--rule-dark);font-size:.75rem;display:flex}.status-dot{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.status-dot-green{background-color:var(--accent-paid)}.status-dot-amber{background-color:var(--accent-due)}.status-dot-red{background-color:var(--accent-overdue)}.status-dot-blue{background-color:var(--accent-info)}.ledger-table{border-collapse:collapse;width:100%;font-size:.9375rem}.ledger-table thead{border-bottom:2px solid var(--text-ink)}.ledger-table th{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);text-align:left;padding:var(--space-3) var(--space-4);font-family:"Source Sans 3",sans-serif;font-size:.6875rem;font-weight:600}.ledger-table th.text-right,.ledger-table td.text-right{text-align:right}.ledger-table th.text-center,.ledger-table td.text-center{text-align:center}.ledger-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--rule-light);vertical-align:middle}.ledger-table tbody tr:last-child td{border-bottom:2px solid var(--text-ink)}.ledger-table .cell-mono{font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace;font-size:.875rem}.card{background-color:var(--bg-paper);border:1px solid var(--rule-light);padding:var(--space-6)}.card-accent{border-top:3px solid var(--accent-action)}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-label{color:var(--text-ink);font-family:"Source Sans 3",sans-serif;font-size:.8125rem;font-weight:600}.form-input,.form-textarea,.form-select{color:var(--text-ink);background-color:var(--bg-paper);border:1px solid var(--rule-light);border-radius:0;padding:10px 14px;font-family:"Source Sans 3",sans-serif;font-size:.9375rem;transition:border-color .15s}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--accent-action);outline:2px solid var(--focus-ring);outline-offset:1px}.form-textarea{resize:vertical;min-height:120px}.site-header{z-index:100;background-color:var(--bg-dark);height:var(--header-height);border-bottom:1px solid var(--rule-dark);position:fixed;top:0;left:0;right:0}.site-header-inner{max-width:var(--max-width);padding:0 var(--space-5);justify-content:space-between;align-items:center;height:100%;margin:0 auto;display:flex}.site-logo{align-items:center;gap:0;text-decoration:none;transition:opacity .2s;display:inline-flex}.site-logo:hover{opacity:.85}.logo-wordmark{letter-spacing:.22em;text-transform:uppercase;color:#0000;-webkit-text-stroke:1.5px var(--text-on-dark);text-stroke:1.5px var(--text-on-dark);align-items:center;gap:12px;padding:6px 0;font-family:Playfair Display SC,Georgia,serif;font-size:1.6rem;font-weight:900;display:inline-flex;position:relative}.logo-wordmark:before,.logo-wordmark:after{content:"";background:#c17f4e;flex-shrink:0;width:24px;height:1px;display:inline-block}.logo-wordmark-wrap{flex-direction:column;align-items:center;gap:4px;display:inline-flex}.logo-wordmark-wrap .logo-tagline{letter-spacing:.35em;text-transform:uppercase;color:#c17f4e;white-space:nowrap;font-family:"Source Sans 3",sans-serif;font-size:.5rem;font-weight:400}.footer-brand .logo-wordmark{-webkit-text-stroke-width:1.2px;font-size:1.3rem}.footer-brand .logo-wordmark:before,.footer-brand .logo-wordmark:after{width:18px}.footer-brand .logo-tagline{font-size:.45rem}.site-nav{align-items:center;gap:var(--space-6);display:flex}.site-nav-link{color:var(--text-on-dark-m);padding:4px 0;font-family:"Source Sans 3",sans-serif;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .15s}.site-nav-link:hover{color:var(--text-on-dark)}.site-nav-divider{background-color:var(--rule-dark);width:1px;height:20px}.nav-btn-login{color:var(--text-on-dark);border:1px solid var(--rule-dark);cursor:pointer;background:0 0;padding:7px 18px;font-family:"Source Sans 3",sans-serif;font-size:.8125rem;font-weight:600;text-decoration:none;transition:border-color .15s,background-color .15s}.nav-btn-login:hover{border-color:var(--text-on-dark-m);background-color:var(--bg-dark-raised);color:var(--text-on-dark)}.nav-toggle{cursor:pointer;color:var(--text-on-dark);background:0 0;border:none;padding:8px;display:none}.nav-toggle span{background-color:currentColor;width:20px;height:2px;margin:4px 0;transition:transform .2s;display:block}.site-footer{background-color:var(--bg-dark);color:var(--text-on-dark-m);border-top:1px solid var(--rule-dark)}.footer-main{max-width:var(--max-width);padding:var(--space-9) var(--space-5) var(--space-7);gap:var(--space-7);grid-template-columns:2fr 1fr 1fr 1fr;margin:0 auto;display:grid}.footer-brand p{margin-top:var(--space-3);max-width:320px;font-size:.875rem;line-height:1.6}.footer-col h4{letter-spacing:.12em;text-transform:uppercase;color:var(--text-on-dark);margin-bottom:var(--space-4);font-family:"Source Sans 3",sans-serif;font-size:.6875rem;font-weight:600}.footer-col ul{padding:0;list-style:none}.footer-col li{margin-bottom:var(--space-2)}.footer-col a{color:var(--text-on-dark-m);font-size:.875rem;text-decoration:none;transition:color .15s}.footer-col a:hover{color:var(--text-on-dark)}.footer-legal{max-width:var(--max-width);padding:var(--space-5) var(--space-5);border-top:1px solid var(--rule-dark);justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;margin:0 auto;display:flex}.footer-legal p{color:var(--text-on-dark-m);font-size:.75rem}.footer-legal-links{gap:var(--space-5);display:flex}.footer-legal-links a{color:var(--text-on-dark-m);font-size:.75rem}.hero{padding-top:calc(var(--header-height) + var(--space-10));padding-bottom:var(--space-10);background-color:var(--bg-base)}.hero-inner{max-width:var(--max-width);padding:0 var(--space-5);gap:var(--space-8);grid-template-columns:1fr 380px;align-items:start;margin:0 auto;display:grid}.hero-headline{color:var(--text-ink);letter-spacing:-.02em;margin-bottom:var(--space-5);font-family:Newsreader,Georgia,serif;font-size:clamp(2.25rem,4vw,3.25rem);font-weight:600;line-height:1.15}.hero-sub{color:var(--text-body);max-width:540px;margin-bottom:var(--space-6);font-size:1.125rem;line-height:1.7}.hero-actions{gap:var(--space-4);align-items:center;display:flex}.hero-note{margin-top:var(--space-5);color:var(--text-muted);font-size:.8125rem}.process-steps{gap:var(--space-6);counter-reset:step;grid-template-columns:repeat(3,1fr);display:grid}.process-step{counter-increment:step;padding-top:var(--space-6);border-top:2px solid var(--rule-light);position:relative}.process-step:before{content:counter(step, decimal-leading-zero);color:var(--text-muted);background-color:var(--bg-base);padding-right:var(--space-2);font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600;position:absolute;top:-.45em}.section-warm .process-step:before{background-color:var(--bg-warm)}.process-step h3{color:var(--text-ink);margin-bottom:var(--space-2);font-family:"Source Sans 3",sans-serif;font-size:1.125rem;font-weight:600}.process-step p{color:var(--text-muted);font-size:.9375rem;line-height:1.6}.feature-grid{gap:var(--space-6);grid-template-columns:repeat(2,1fr);display:grid}.feature-block{padding:var(--space-6);border:1px solid var(--rule-light);background-color:var(--bg-paper)}.feature-block-label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-action);margin-bottom:var(--space-3);font-family:"Source Sans 3",sans-serif;font-size:.6875rem;font-weight:600}.feature-block h3{color:var(--text-ink);margin-bottom:var(--space-3);font-family:Newsreader,Georgia,serif;font-size:1.375rem;font-weight:600;line-height:1.25}.feature-block p{color:var(--text-muted);font-size:.9375rem;line-height:1.6}.pricing-grid{gap:var(--space-5);grid-template-columns:repeat(3,1fr);display:grid}.pricing-card{background-color:var(--bg-paper);border:1px solid var(--rule-light);padding:var(--space-6);flex-direction:column;display:flex}.pricing-card-featured{border-color:var(--accent-action);border-width:2px;position:relative}.pricing-card-badge{top:0;left:var(--space-6);background-color:var(--accent-action);color:#fffdf8;letter-spacing:.1em;text-transform:uppercase;padding:3px 12px;font-family:"Source Sans 3",sans-serif;font-size:.6875rem;font-weight:700;position:absolute;transform:translateY(-50%)}.pricing-tier-name{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-3);font-family:"Source Sans 3",sans-serif;font-size:.6875rem;font-weight:600}.pricing-amount{color:var(--text-ink);margin-bottom:var(--space-1);font-family:JetBrains Mono,monospace;font-size:2.5rem;font-weight:700;line-height:1}.pricing-amount span{color:var(--text-muted);font-size:1rem;font-weight:400}.pricing-desc{color:var(--text-muted);margin-bottom:var(--space-5);padding-bottom:var(--space-5);border-bottom:1px solid var(--rule-light);font-size:.875rem}.pricing-features{margin:0 0 var(--space-6) 0;flex-grow:1;padding:0;list-style:none}.pricing-features li{color:var(--text-body);padding:var(--space-2) 0;border-bottom:1px solid var(--rule-light);align-items:baseline;gap:var(--space-2);font-size:.875rem;display:flex}.pricing-features li:last-child{border-bottom:none}.check{color:var(--accent-paid);flex-shrink:0;font-size:.875rem;font-weight:700}@media (max-width:900px){.hero-inner{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr}.process-steps,.feature-grid{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr;max-width:440px;margin:0 auto}.contact-grid{grid-template-columns:1fr!important}}@media (max-width:640px){.site-nav{display:none}.nav-toggle{display:block}.site-nav.open{top:var(--header-height);background-color:var(--bg-dark);padding:var(--space-5);border-bottom:1px solid var(--rule-dark);gap:var(--space-4);flex-direction:column;display:flex;position:absolute;left:0;right:0}.site-nav-divider{display:none}.hero-headline{font-size:2rem}.footer-main{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:stretch}.btn{text-align:center}.footer-legal{text-align:center;flex-direction:column}.footer-legal-links{justify-content:center}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}.skip-link{top:-100%;left:var(--space-4);z-index:9999;padding:var(--space-2) var(--space-4);background-color:var(--accent-action);color:#fffdf8;font-family:"Source Sans 3",sans-serif;font-size:.875rem;font-weight:600;text-decoration:none;position:absolute}.skip-link:focus{top:var(--space-2)}.legal-content h2{color:var(--text-ink);margin:var(--space-7) 0 var(--space-3) 0;padding-top:var(--space-4);font-family:Newsreader,Georgia,serif;font-size:1.375rem;font-weight:600;line-height:1.25}.legal-content h3{color:var(--text-ink);margin:var(--space-5) 0 var(--space-2) 0;font-family:"Source Sans 3",sans-serif;font-size:1.0625rem;font-weight:600}.legal-content p{margin-bottom:var(--space-4)}.legal-content ul,.legal-content ol{margin-bottom:var(--space-4);padding-left:1.5rem}.legal-content li{margin-bottom:var(--space-2)}.legal-content strong{color:var(--text-ink)}.legal-content a{color:var(--accent-action);text-decoration:underline}@supports (padding:env(safe-area-inset-top)){.site-header{padding-top:env(safe-area-inset-top)}.site-footer{padding-bottom:env(safe-area-inset-bottom)}body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}@media (max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:640px){.stats-grid{grid-template-columns:1fr!important}}
