@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Instrument+Serif:ital@0;1&family=DM+Sans:wght@400;500;600&display=swap";.landing-page{background:var(--white);color:var(--black);-webkit-font-smoothing:antialiased;--black:#0a0a0a;--white:#f5f2ed;--cream:#e8e2d8;--accent:#c45a3c;--accent-hover:#d4694b;--muted:#8a8477;--rule:#d0c9bc;--green:#4a7c59;max-width:none;padding:0;font-family:DM Sans,sans-serif;overflow-x:hidden}.landing-page nav{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;padding:1.5rem 4rem;display:flex}.landing-page .logo{letter-spacing:.05em;text-transform:uppercase;font-family:DM Mono,monospace;font-size:1.1rem;font-weight:500}.landing-page .logo span{color:var(--accent)}.landing-page nav a{color:var(--black);letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--black);padding:.6rem 1.4rem;font-family:DM Mono,monospace;font-size:.8rem;text-decoration:none;transition:all .2s}.landing-page nav a:hover{background:var(--black);color:var(--white)}.landing-page .hero{max-width:900px;padding:8rem 4rem 6rem}.landing-page .hero h1{letter-spacing:-.02em;margin-bottom:2rem;font-family:Instrument Serif,serif;font-size:clamp(3rem,7vw,5.5rem);font-weight:400;line-height:1.05}.landing-page .hero h1 em{color:var(--accent);font-style:italic}.landing-page .hero-sub{color:var(--muted);max-width:540px;margin-bottom:3rem;font-size:1.25rem;line-height:1.6}.landing-page .price-tag{background:var(--black);color:var(--white);letter-spacing:.02em;padding:.8rem 2rem;font-family:DM Mono,monospace;font-size:1.6rem;font-weight:500;display:inline-block}.landing-page .price-tag small{color:var(--cream);margin-left:.5rem;font-size:.85rem;font-weight:400}.landing-page .divider{border:none;border-top:1px solid var(--rule);margin:0 4rem}.landing-page .how{max-width:1100px;padding:6rem 4rem}.landing-page .section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:3rem;font-family:DM Mono,monospace;font-size:.75rem}.landing-page .steps{grid-template-columns:repeat(3,1fr);gap:4rem;display:grid}.landing-page .step-num{color:var(--cream);margin-bottom:1rem;font-family:Instrument Serif,serif;font-size:3.5rem;line-height:1}.landing-page .step h3{text-transform:uppercase;letter-spacing:.05em;margin-bottom:.8rem;font-family:DM Mono,monospace;font-size:.85rem}.landing-page .step p{color:var(--muted);font-size:.95rem;line-height:1.6}.landing-page .features{background:var(--black);color:var(--white);padding:6rem 4rem}.landing-page .features .section-label{color:var(--muted)}.landing-page .feature-grid{grid-template-columns:1fr 1fr;gap:2rem;max-width:900px;display:grid}.landing-page .feature{border:1px solid #2a2a2a;padding:2rem}.landing-page .feature h3{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:.6rem;font-family:DM Mono,monospace;font-size:.8rem}.landing-page .feature p{color:#999;font-size:.9rem;line-height:1.6}.landing-page .differentiator{background:var(--cream);padding:6rem 4rem}.landing-page .diff-content{max-width:700px}.landing-page .differentiator h2{margin-bottom:2rem;font-family:Instrument Serif,serif;font-size:2.5rem;font-weight:400}.landing-page .differentiator p{color:var(--muted);margin-bottom:1.2rem;font-size:1.05rem;line-height:1.7}.landing-page .menu-section{max-width:800px;padding:6rem 4rem}.landing-page .menu-item{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:baseline;padding:1.4rem 0;display:flex}.landing-page .menu-item:first-of-type{border-top:1px solid var(--rule)}.landing-page .menu-label{font-family:DM Sans,sans-serif;font-size:1.05rem}.landing-page .menu-value{color:var(--green);text-transform:uppercase;letter-spacing:.04em;font-family:DM Mono,monospace;font-size:.85rem}.landing-page .menu-value.no{color:var(--muted);text-decoration:line-through}.landing-page .not-for{background:var(--cream);padding:6rem 4rem}.landing-page .not-for-content{max-width:700px}.landing-page .not-for h2{margin-bottom:2rem;font-family:Instrument Serif,serif;font-size:2.5rem;font-weight:400}.landing-page .not-for p{color:var(--muted);margin-bottom:1.2rem;font-size:1.05rem;line-height:1.7}.landing-page .not-for strong{color:var(--black)}.landing-page .cred{max-width:700px;padding:6rem 4rem}.landing-page .cred h2{margin-bottom:2rem;font-family:Instrument Serif,serif;font-size:2.5rem;font-weight:400}.landing-page .cred p{color:var(--muted);margin-bottom:1.2rem;font-size:1.05rem;line-height:1.7}.landing-page .cred strong{color:var(--black)}.landing-page .cta{text-align:center;border-top:1px solid var(--rule);padding:8rem 4rem}.landing-page .cta h2{margin-bottom:1.5rem;font-family:Instrument Serif,serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:400}.landing-page .cta p{color:var(--muted);margin-bottom:2.5rem;font-size:1.1rem}.landing-page .cta-btn{text-transform:uppercase;letter-spacing:.06em;background:var(--accent);color:var(--white);cursor:pointer;border:none;padding:1rem 3rem;font-family:DM Mono,monospace;font-size:.9rem;text-decoration:none;transition:background .2s;display:inline-block}.landing-page .cta-btn:hover{background:var(--accent-hover)}.landing-page footer{border-top:1px solid var(--rule);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;padding:2rem 4rem;font-family:DM Mono,monospace;font-size:.7rem;display:flex}.landing-page footer a{color:var(--muted);text-decoration:none}.landing-page footer a:hover{color:var(--black)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.landing-page .hero h1{animation:.8s both fadeUp}.landing-page .hero-sub{animation:.8s .15s both fadeUp}.landing-page .price-tag{animation:.8s .3s both fadeUp}@media (width<=768px){.landing-page nav{padding:1.2rem 1.5rem}.landing-page .hero{padding:4rem 1.5rem 3rem}.landing-page .divider{margin:0 1.5rem}.landing-page .how{padding:4rem 1.5rem}.landing-page .steps{grid-template-columns:1fr;gap:2.5rem}.landing-page .features{padding:4rem 1.5rem}.landing-page .feature-grid{grid-template-columns:1fr}.landing-page .menu-section,.landing-page .not-for,.landing-page .cred,.landing-page .cta{padding:4rem 1.5rem}.landing-page footer{flex-direction:column;gap:.5rem;padding:1.5rem}}:root{--primary:#1a365d;--primary-light:#2b6cb0;--accent:#e53e3e;--bg:#f7fafc;--card-bg:#fff;--text:#1a202c;--text-light:#718096;--border:#e2e8f0;--success:#38a169;--radius:6px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.app-container{max-width:720px;margin:0 auto;padding:24px 16px}.landing{text-align:center;padding:60px 0}.landing-header h1{color:var(--primary);margin-bottom:8px;font-size:2.4rem}.tagline{color:var(--text-light);margin-bottom:48px;font-size:1.1rem}.value-props{grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:48px;display:grid}.prop{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:24px 16px}.prop h3{color:var(--primary);margin-bottom:8px}.prop p{color:var(--text-light);font-size:.9rem}.cta-section{margin-bottom:48px}.login-link{margin-top:12px;font-size:.9rem}.login-link a{color:var(--primary-light)}.landing-footer{color:var(--text-light);font-size:.85rem}.auth-page{max-width:400px;margin:60px auto}.auth-page h2{color:var(--primary);margin-bottom:24px}.auth-switch{margin-top:16px;font-size:.9rem}.auth-switch a{color:var(--primary-light)}.btn-primary{background:var(--primary);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:10px 24px;font-size:1rem}.btn-primary:hover{background:var(--primary-light)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-primary.btn-large{padding:14px 36px;font-size:1.1rem}.btn-secondary{color:var(--primary);border:1px solid var(--primary);border-radius:var(--radius);cursor:pointer;background:0 0;padding:10px 24px;font-size:1rem}.btn-secondary:hover{background:var(--primary);color:#fff}.btn-remove{color:var(--accent);cursor:pointer;background:0 0;border:none;font-size:.85rem}.field-row{margin-bottom:16px}.field-row label{color:var(--text);margin-bottom:4px;font-size:.9rem;font-weight:500;display:block}.field-row input,.field-row select,.field-row textarea{border:1px solid var(--border);border-radius:var(--radius);width:100%;padding:8px 12px;font-family:inherit;font-size:.95rem}.field-row input:focus,.field-row select:focus,.field-row textarea:focus{border-color:var(--primary-light);outline:none;box-shadow:0 0 0 2px #2b6cb026}.checkbox-row label{align-items:center;gap:8px;display:flex}.checkbox-row input[type=checkbox]{width:auto}.error-msg{color:var(--accent);margin-bottom:12px;font-size:.9rem}.warning{color:var(--accent);font-style:italic}.form-grid{grid-template-columns:1fr 1fr;gap:0 24px;display:grid}:is(.form-grid .field-row:has(textarea),.form-grid .field-row:has(select)){grid-column:1/-1}.step-wizard{border-bottom:1px solid var(--border);gap:4px;margin-bottom:32px;padding-bottom:16px;display:flex}.step{color:var(--text-light);flex:1;align-items:center;gap:6px;font-size:.85rem;display:flex}.step-num{background:var(--border);width:24px;height:24px;color:var(--text-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.step.active .step-num{background:var(--primary);color:#fff}.step.done .step-num{background:var(--success);color:#fff}.step.active{color:var(--primary);font-weight:500}.step-nav{justify-content:flex-end;gap:12px;margin-top:32px;display:flex}.intake-step h2{color:var(--primary);margin-bottom:8px}.intake-step>p{color:var(--text-light);margin-bottom:24px}.screening-questions{flex-direction:column;gap:16px;display:flex}.screening-row{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;padding:16px;display:flex}.question-text{flex:1;margin-right:16px}.yes-no{gap:8px;display:flex}.btn-toggle{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:#fff;padding:6px 16px;font-size:.9rem}.btn-toggle.active{background:var(--primary);color:#fff;border-color:var(--primary)}.slip-type-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.btn-slip-type{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;text-align:left;padding:12px 16px;font-size:.9rem}.btn-slip-type:hover{border-color:var(--primary-light);background:#ebf4ff}.slip-entry{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);margin:16px 0;padding:24px}.slip-entry h3{color:var(--primary);margin-bottom:4px}.slip-desc{color:var(--text-light);margin-bottom:20px;font-size:.85rem}.slip-fields{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.slip-actions{gap:12px;margin-top:20px;display:flex}.section-header{color:var(--primary);margin:16px 0 8px;font-size:.9rem;font-weight:600}.slip-list{margin-bottom:24px}.slip-summary{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;margin-bottom:6px;padding:10px 16px;display:flex}.slip-type-badge{background:var(--primary);color:#fff;border-radius:3px;padding:2px 8px;font-size:.8rem;font-weight:600}.slip-payer{flex:1}.spouse-badge{color:#744210;background:#fefcbf;border-radius:3px;padding:2px 8px;font-size:.75rem}.review-section{margin-bottom:24px}.review-section h3{color:var(--primary);margin-bottom:12px;font-size:1rem}.review-table{border-collapse:collapse;width:100%}.review-table td{border-bottom:1px solid var(--border);padding:6px 12px;font-size:.9rem}.review-table td:first-child{width:180px;color:var(--text-light);font-weight:500}.review-slip{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;padding:12px 16px}.review-slip-data{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.review-slip-data span{color:var(--text-light);font-size:.85rem}.pay-section{border-top:1px solid var(--border);margin-top:24px;padding-top:24px}.pay-note{color:var(--text-light);margin-bottom:16px;font-size:.9rem}.loading{text-align:center;color:var(--text-light);padding:40px}@media (width<=640px){.value-props,.form-grid{grid-template-columns:1fr}.screening-row{flex-direction:column;align-items:flex-start;gap:12px}.step-label{display:none}}
