:root{color:#272b2a;background:#f2efeb;font-family:Arial,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{color:#272b2a;cursor:pointer;background:#fff;border:1px solid #c9c0b8;border-radius:7px;min-height:44px;padding:0 15px;font-weight:700}button:hover{border-color:#8d2334}.intake-app{min-height:100vh}.app-header{z-index:3;color:#fff;background:#202423;justify-content:space-between;align-items:center;gap:20px;padding:14px clamp(18px,4vw,54px);display:flex;position:sticky;top:0}.app-header>div:first-child{align-items:center;gap:12px;display:flex}.brand{color:#fff;letter-spacing:.05em;background:#8d2334;border-radius:50%;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.app-header strong,.app-header span{display:block}.app-header strong{font-size:15px}.app-header span{color:#c9cecb;margin-top:3px;font-size:11px}.header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.header-actions>span{color:#c9cecb}.header-actions button{color:#fff;background:0 0;border-color:#59615f;min-height:42px;font-size:12px}.app-layout{grid-template-columns:245px minmax(0,1fr);gap:48px;width:min(100%,1360px);margin:0 auto;padding:42px clamp(18px,4vw,54px) 80px;display:grid}.stepper{align-self:start;gap:5px;display:grid;position:sticky;top:105px}.stepper>p{color:#756f69;margin:0 0 10px 10px;font-size:12px;font-weight:700}.stepper button{text-align:left;color:#756f69;background:0 0;border:0;grid-template-columns:32px 1fr;min-height:44px;font-size:12px;display:grid}.stepper button small{color:#a39d96;font-family:monospace}.stepper button.active{color:#8d2334;background:#fff;box-shadow:0 8px 22px #231c180f}.stage{min-width:0}.stage-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px;display:flex}.stage-heading h1,.lock-card h1{letter-spacing:-.04em;margin:7px 0 0;font-family:Georgia,serif;font-size:clamp(32px,5vw,50px)}.eyebrow{color:#8d2334;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:800}.save-button{white-space:nowrap}.card{background:#fff;border:1px solid #e2ddd7;padding:clamp(22px,4vw,38px);box-shadow:0 15px 35px #231c180f}.grid{gap:17px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field{gap:7px;min-width:0;display:grid}.field>span{color:#675f59;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.field input,.field textarea,.field select{color:#272b2a;background:#fff;border:1px solid #c9c0b8;border-radius:7px;width:100%;min-height:46px;padding:10px 12px}.field textarea{resize:vertical;min-height:145px}.section-heading{justify-content:space-between;align-items:start;gap:15px;margin-bottom:18px;display:flex}.section-heading p{color:#756f69;margin:0;line-height:1.55}.row{background:#faf8f6;border:1px solid #e2ddd7;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px;padding:16px;display:grid}.row.expense{grid-template-columns:1.25fr .9fr 1.2fr 1fr auto;align-items:end}.row.expense>strong{align-self:center;font-size:13px}.row.policy{grid-template-columns:repeat(4,minmax(0,1fr))}.row.policy .remove{grid-column:1/-1;justify-self:end}.field-with-status{gap:6px;display:grid}.status-controls,.row-controls{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.status-controls{margin-top:8px}.row-controls{min-height:44px}.category-status{background:#fffdfb;border-top:1px solid #eeeae6;padding:0 13px}.financial-group-actions{align-items:end;gap:12px;display:flex}.compact-field{min-width:190px}.direct-total{border-top:1px solid #eeeae6;grid-template-columns:minmax(220px,300px) 1fr;align-items:end;gap:18px;padding:14px 13px;display:grid}.expense-detail-list{border-top:1px solid #eeeae6}.expense-detail-row{grid-template-columns:minmax(0,1fr) 140px minmax(250px,auto)}.custom-description{border:1px solid #c9c0b8;border-radius:5px;width:100%;min-height:42px;padding:8px 10px}.add-custom{margin:13px}.summary-section{background:#fff;border:1px solid #e2ddd7;margin-top:20px;padding:18px}.summary-section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.summary-section-heading h2{color:#3d3a37;margin:0;font-size:18px}.summary-section-heading button,.link-button{color:#8d2334;background:0 0;border:0;min-height:38px;padding:0}.answer-list{gap:8px;margin:0;display:grid}.answer-list>div{border-bottom:1px solid #eeeae6;grid-template-columns:minmax(150px,.55fr) minmax(0,1fr);gap:14px;padding:8px 0;display:grid}.answer-list dt{color:#756f69;font-size:12px;font-weight:800}.answer-list dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.summary-total{color:#8d2334;margin:14px 0 0;font-weight:800}.submitted-page{background:#f2efeb;min-height:100vh;padding:28px clamp(18px,4vw,54px) 70px}.submission-actions{width:min(100%,680px);margin:0 auto 28px}.printable-intake{background:#fff;width:min(100%,960px);margin:0 auto;padding:28px}.printable-intake>header{border-bottom:2px solid #8d2334;padding-bottom:18px}.printable-intake h1{margin:6px 0 12px;font-family:Georgia,serif}.printable-intake .summary-section{box-shadow:none}.goal-row{background:#faf8f6;border:1px solid #e2ddd7;grid-template-columns:1.15fr 1.35fr .9fr .9fr .75fr auto;align-items:end;gap:12px;margin-top:12px;padding:16px;display:grid}.goal-row .remove{align-self:end}.unknown{color:#756f69;align-items:center;gap:7px;min-height:44px;font-size:12px;display:inline-flex}.unknown input,.confirm input{accent-color:#8d2334;width:18px;height:18px}.remove{color:#8d2334;background:0 0;border:0;font-size:12px}.review-card dl{grid-template-columns:minmax(150px,.6fr) 1fr;gap:10px 20px;margin:22px 0;display:grid}.review-card dt{color:#756f69;font-size:12px;font-weight:800}.review-card dd{margin:0;font-size:13px}.confirm{background:#eaf2ed;align-items:start;gap:10px;padding:16px;line-height:1.5;display:flex}.primary{color:#fff;background:#8d2334;border-color:#8d2334}.primary:hover{background:#6e1928}.full{width:100%;margin-top:16px}.navigation{justify-content:space-between;gap:12px;margin-top:18px;display:flex}.privacy-footer{color:#756f69;justify-content:space-between;gap:15px;margin-top:22px;font-size:11px;display:flex}.privacy-footer button{color:#8d2334;background:0 0;border:0;min-height:38px;padding:0}.notice,.error{border-radius:7px;margin-bottom:18px;padding:13px 15px;font-size:13px}.notice{color:#315548;background:#eaf2ed}.error{color:#8d2334;background:#fff1ef}.helper{color:#756f69;font-size:12px;line-height:1.6}.financial-sheet{padding:clamp(18px,4vw,34px)}.financial-table{background:#fff;border:1px solid #ded8d1}.financial-table-head,.financial-table-row{grid-template-columns:minmax(0,1fr) 150px 150px minmax(220px,auto);align-items:center;gap:14px;padding:10px 13px;display:grid}.financial-table-head{color:#4d4a46;text-transform:uppercase;letter-spacing:.06em;background:#e7e4df;font-size:11px;font-weight:800}.financial-table-row{border-top:1px solid #eeeae6;font-size:13px}.financial-table-row input{color:#272b2a;text-align:right;background:#fff5ce;border:1px solid #d4c7a2;border-radius:4px;width:100%;min-height:42px;padding:9px 10px}.financial-table-row output{text-align:right;color:#4d4a46;background:#f6f6f6;border:1px solid #d9d9d9;min-height:42px;padding:11px 10px}.financial-summary{background:#f7f5f2;border:1px solid #ded8d1;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:10px 16px;margin:0 0 20px;padding:14px 16px;font-size:12px;display:grid}.financial-summary strong{color:#8d2334;font-size:16px}.financial-group{border:1px solid #ded8d1;margin-top:18px}.financial-group-heading{background:#f0eeeb;justify-content:space-between;align-items:center;gap:15px;padding:11px 13px;display:flex}.financial-group-heading h3{color:#3d3a37;margin:0;font-size:13px}.financial-group-heading strong{color:#8d2334;font-size:13px}.financial-group .financial-table-row{grid-template-columns:minmax(0,1fr) 150px minmax(220px,auto)}.financial-group .unknown{white-space:nowrap;min-height:42px}.financial-total{color:#3d3a37;border-top:2px solid #8d2334;justify-content:space-between;gap:15px;margin-top:18px;padding:14px 0 0;display:flex}.financial-total span{color:#8d2334;font-size:16px;font-weight:800}.locked-screen{background:#f2efeb;place-items:center;min-height:100vh;padding:22px;display:grid}.lock-card{background:#fff;border:1px solid #e2ddd7;width:min(100%,520px);padding:clamp(28px,6vw,60px);box-shadow:0 15px 35px #231c1814}.lock-card>p:not(.eyebrow){color:#756f69;line-height:1.6}.lock-card .brand{margin-bottom:22px}.lock-card.submitted{text-align:center}@media (width<=900px){.app-layout{grid-template-columns:1fr;gap:24px}.stepper{padding-bottom:5px;display:flex;position:static;overflow-x:auto}.stepper>p{display:none}.stepper button{min-width:180px}}@media (width<=650px){.app-header{flex-direction:column;align-items:start}.header-actions{justify-content:flex-start}.app-header>div:first-child{align-items:start}.grid.two,.row,.row.expense,.row.policy,.goal-row{grid-template-columns:1fr}.stage-heading{flex-direction:column;align-items:start}.save-button{width:100%}.privacy-footer{flex-direction:column;align-items:start}.financial-table-head{grid-template-columns:minmax(0,1fr) 110px}.financial-table-head span:nth-child(3),.financial-table-head span:nth-child(4){display:none}.financial-table-row,.financial-group .financial-table-row,.expense-detail-row{grid-template-columns:minmax(0,1fr) 110px}.financial-table-row output{display:none}.financial-table-row .row-controls,.expense-detail-row .row-controls{grid-column:1/-1}.financial-summary{grid-template-columns:1fr auto}.financial-group-actions,.direct-total{grid-template-columns:1fr;display:grid}.compact-field{min-width:0}.status-controls,.row-controls{align-items:flex-start}.unknown{min-height:44px}.answer-list>div{grid-template-columns:1fr;gap:3px}.printable-intake{padding:16px}}@media print{.app-header,.stepper,.stage-heading button,.navigation,.privacy-footer,.header-actions,.remove,.section-heading button,.submission-actions{display:none!important}.app-layout{padding:0;display:block}.card{box-shadow:none;border:0}.stage-heading{display:block}.submitted-page{background:#fff;padding:0}.printable-intake{width:100%;padding:0;display:block}body{background:#fff}}
