:root{font-family:Inter,"Segoe UI",sans-serif;color:#203c31;background:#f4f6f3;--border:#d9e3dc}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #c5d8cc;border-radius:9px;padding:12px 16px;font-weight:600;background:white;color:#204432}button:disabled{cursor:default;opacity:.7}button.primary{background:#1c7450;color:white;border-color:#1c7450;width:100%}.quiet{background:white}a{color:#136746}input,select,textarea{display:block;width:100%;padding:10px 11px;border:1px solid #becfc4;border-radius:7px;background:white;color:#213a2c;margin-top:6px}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #85c7a3;outline-offset:2px}label{display:block;font-size:13px;font-weight:600;margin:15px 0}.consent{display:flex;gap:10px;align-items:flex-start;line-height:1.5}.consent input{width:18px;flex:0 0 18px;margin:2px 0}.portal-header{height:78px;padding:0 max(24px,calc((100vw - 1400px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d9e3dc;background:white;gap:20px}.portal-header a{font-size:20px;font-weight:700;text-decoration:none}.portal-header span{font-size:12px;color:#66796c}#portal{max-width:1448px;margin:auto;padding:32px 24px}.portal-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:5px 0 28px}.portal-heading h1{font-size:27px;letter-spacing:-.5px;margin:9px 0}.portal-heading p{color:#62766a;font-size:14px}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:700;color:#587663}.portal-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.portal-layout>*,aside{min-width:0}.portal-card{padding:25px;border:1px solid #d9e3dc;border-radius:14px;background:white;margin-bottom:18px;box-shadow:0 3px 16px #29453105}.portal-card h2{font-size:20px;line-height:1.35}.portal-card p{font-size:13px;line-height:1.7;color:#4f6959}.status-pill{font-size:11px;display:inline-block;background:#e2f1e8;border-radius:20px;padding:8px 11px;color:#266747}.portal-card .small{font-size:11px;color:#697c70}.portal-card dl{display:grid;grid-template-columns:1fr auto;gap:13px;font-size:13px}.portal-card dd{margin:0;text-align:right;font-weight:650}.deposit-total{font-weight:700;font-size:18px!important}.payment-disabled{width:100%;background:#f1f4f1}.portal-footer{text-align:center;color:#61766a;font-size:12px;line-height:1.8;padding:20px 24px 40px}.portal-loading{padding:65px 25px;background:white;text-align:center;border:1px solid #d9e3dc;border-radius:14px}.preview-notice{background:#fff4d8;color:#785320;padding:12px 18px;border:1px solid #e3cf95;border-radius:9px;font-size:12px;margin-bottom:24px}#response-error{color:#a23430}.invoice-copy{margin-top:30px}.billing-paper{box-shadow:none}.billing-paper .quote-signature{display:none}.portal-card textarea{resize:vertical}
@media(max-width:1050px){.portal-layout{grid-template-columns:minmax(0,1fr)}.portal-layout aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.portal-card{margin:0}.portal-layout aside>button{justify-self:start}.billing-paper{padding:26px}}
@media(max-width:620px){#portal{padding:20px 12px}.portal-header{padding:0 16px;height:68px}.portal-header span{display:none}.portal-heading{align-items:flex-start;flex-direction:column}.portal-heading h1{font-size:24px}.portal-layout aside{display:block}.portal-card{margin-bottom:15px;padding:20px}.billing-paper{padding:18px}.quote-recipient{flex-direction:column}.quote-recipient dl{width:100%}.quote-service-price{flex-wrap:wrap}.quote-brand-header{gap:12px}.billing-brand{font-size:18px}.quote-number{min-width:80px}.quote-number strong{font-size:18px}.quote-reviews{grid-template-columns:1fr!important}.quote-pricing-end{gap:12px}.portal-footer{font-size:11px}}
@media print{.portal-header,.portal-heading,aside,.portal-footer,.preview-notice{display:none!important}body{background:white}#portal{padding:0;max-width:none}.portal-layout{display:block}.billing-paper{border:0;padding:0;box-shadow:none}.invoice-copy{break-before:page}.quote-service,.quote-reviews figure,.quote-terms{break-inside:avoid}@page{size:letter;margin:16mm}}
