@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');
:root{--olive:#59634a;--olive-deep:#3f4938;--stone:#f2f0eb;--bronze:#927257;--ink:#252a25;--muted:#6e746c;--line:#d9d8d1;--paper:#fbfaf7;--soft:#efeee9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--stone);color:var(--ink);font:400 15px/1.65 Montserrat,Arial,sans-serif;letter-spacing:.005em}.portal-top{height:76px;background:#252c26;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,5vw);border-bottom:1px solid #ffffff14;position:sticky;top:0;z-index:20}.portal-brand{color:#fff;text-decoration:none;display:grid;letter-spacing:.16em;font-weight:600}.portal-brand span{font-size:9px;font-weight:500;opacity:.72}.portal-top button,.portal-login button,.portal-button{border:1px solid var(--olive-deep);background:var(--olive-deep);color:#fff;padding:13px 20px;font:600 11px Montserrat,Arial,sans-serif;letter-spacing:.065em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s}.portal-top button:hover,.portal-login button:hover,.portal-button:hover{background:var(--olive);border-color:var(--olive)}.portal-login{max-width:760px;margin:9vh auto;padding:clamp(30px,6vw,68px);background:var(--paper);border-top:3px solid var(--olive);box-shadow:0 20px 60px #27302512}.eyebrow{font-size:10px;letter-spacing:.22em;font-weight:700;color:var(--bronze);margin-bottom:4px}h1{font:600 clamp(32px,5vw,54px)/1.12 Montserrat,Arial,sans-serif;letter-spacing:-.035em;margin:.3em 0}h2,h3,h4{font-family:Montserrat,Arial,sans-serif;letter-spacing:-.02em}h2{font-weight:600}h3,h4{font-weight:600;margin:.35em 0}label{font-weight:600;display:grid;gap:7px}input,select,textarea{width:100%;padding:13px;border:1px solid #b9bcb5;background:#fff;font:inherit;color:var(--ink);border-radius:0}input:focus,select:focus,textarea:focus{outline:2px solid #59634a55;outline-offset:1px;border-color:var(--olive)}textarea{min-height:105px}.portal-login form{display:grid;gap:15px;margin:28px 0}.form-message{min-height:24px;color:#7a493c}.portal-shell{max-width:1250px;margin:0 auto;padding:38px 22px 80px}.portal-hero{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:26px}.portal-hero p:last-child{max-width:720px}.portal-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:22px;align-items:start}.portal-card{background:var(--paper);padding:26px;border:1px solid var(--line);box-shadow:0 8px 28px #2730250a;margin-bottom:22px}.attention{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:25px 28px;margin-bottom:22px;background:#e9e7df;border-left:4px solid var(--bronze)}.attention h2,.attention p{margin:.2em 0}.attention.all-clear{background:#e6eadf;border-color:var(--olive)}.attention-list{display:grid;min-width:min(390px,45%)}.attention-list a{padding:8px 0;border-bottom:1px solid #00000012;color:var(--olive-deep);text-decoration:none;font-weight:600}.attention-list span{display:inline-block;width:76px;font-size:9px;letter-spacing:.08em;color:var(--bronze);text-transform:uppercase}.checkmark{font-size:34px;color:var(--olive)}.rep-card{background:var(--olive);color:#fff;border-color:var(--olive);box-shadow:0 12px 34px #353e3026}.rep-card .eyebrow{color:#e5dacd}.rep-head{display:flex;gap:15px;align-items:center}.rep-photo,.rep-initial{width:58px;height:58px;border-radius:50%;object-fit:cover;background:#d8d3c5;color:var(--olive-deep);display:grid;place-items:center;font:600 22px Montserrat,Arial,sans-serif}.rep-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.rep-actions a,.rep-actions button{background:#f7f5ef;color:var(--olive-deep);border:1px solid #ffffff55;padding:11px 13px;font:600 10px Montserrat,Arial,sans-serif;letter-spacing:.045em;text-transform:uppercase;text-decoration:none;cursor:pointer}.project-title{display:flex;justify-content:space-between;gap:15px}.status,.mini-status{font-size:9px;letter-spacing:.1em;font-weight:700;background:#e5e7df;color:var(--olive-deep);padding:7px 10px;height:max-content;text-transform:uppercase}.progress{height:7px;background:#dfded8;margin:18px 0}.progress span{display:block;height:100%;background:var(--olive)}.stage-track{display:grid;grid-template-columns:repeat(8,1fr);margin:24px 0 28px;position:relative}.stage-track:before{content:"";height:1px;background:#d0d0ca;position:absolute;top:8px;left:6%;right:6%}.stage{position:relative;text-align:center;color:var(--muted)}.stage span{display:block;width:16px;height:16px;border:3px solid var(--paper);outline:1px solid #bfc1ba;border-radius:50%;background:#d9d9d4;margin:0 auto 9px}.stage.complete span{background:var(--olive);outline-color:var(--olive)}.stage.current span{background:var(--bronze);outline:3px solid #92725730}.stage small{font-size:8px;line-height:1.25;display:block}.stage.current small{color:var(--ink);font-weight:700}.project-note{background:var(--soft);padding:10px}.details{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.details div{background:var(--soft);padding:14px;border:1px solid #e4e2dc}.details small,.document small{display:block;color:var(--muted);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.project-section{padding-top:26px;margin-top:30px;border-top:1px solid var(--line)}.latest-update{background:#f0f1eb;border-left:3px solid var(--olive);padding:20px}.latest-update time,.timeline time{font-size:10px;letter-spacing:.05em;color:var(--muted)}.older-updates{margin-top:15px}.older-updates summary{cursor:pointer;color:var(--olive-deep);font-weight:600}.timeline{border-left:1px solid #c8cbc2;padding-left:18px;margin-top:18px}.timeline article{margin:0 0 20px}.text-button{border:0;background:transparent;color:var(--olive-deep);font:700 10px Montserrat,Arial,sans-serif;letter-spacing:.055em;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:8px 0}.confirmed{display:block;color:var(--olive-deep);font-weight:600}.schedule-list article{display:grid;grid-template-columns:58px 1fr;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}.date-tile{display:grid;place-content:center;text-align:center;background:var(--soft);min-height:58px}.date-tile strong{font-size:20px;line-height:1}.date-tile span{font-size:9px;text-transform:uppercase}.schedule-list p,.payment-list p{margin:.2em 0;color:var(--muted);font-size:13px}.mini-status.confirmed,.mini-status.paid{background:#dfe6d8}.mini-status.overdue{background:#f2dfda;color:#783f32}.approval{padding:18px 0;border-bottom:1px solid var(--line);scroll-margin-top:95px}.approval.pending{border-left:3px solid var(--bronze);padding-left:16px}.row-head{display:flex;justify-content:space-between;gap:14px}.impact{display:flex;flex-wrap:wrap;gap:10px 28px;padding:10px 0}.impact span{font-size:11px;color:var(--muted)}.impact strong{display:block;color:var(--ink)}.inline-link,.payment-amount a{color:var(--olive-deep);font-weight:600}.approval-form{display:grid;gap:10px;margin-top:14px}.approval-form>div{display:flex;flex-wrap:wrap;gap:14px}.decision{background:var(--soft);padding:10px}.payment-list article{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);scroll-margin-top:95px}.payment-amount{text-align:right;display:grid;justify-items:end;gap:4px}.payment-amount>strong{font-size:20px}.fine-print{font-size:11px;color:var(--muted)}.request-form{display:grid;gap:12px}.document-group{margin-top:22px}.document-group h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.document{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #e3e1da;color:var(--olive-deep);text-decoration:none}.home-care-offer{background:var(--olive-deep);color:#fff;padding:clamp(28px,5vw,48px);margin-bottom:22px;display:flex;justify-content:space-between;align-items:center;gap:30px}.home-care-offer .eyebrow{color:#d8c8b8}.home-care-offer h2{font-size:clamp(25px,3vw,38px);margin:.25em 0}.home-care-offer .portal-button{background:#f2f0eb;color:var(--olive-deep);border-color:#f2f0eb;white-space:nowrap}.muted{color:var(--muted)}.empty{padding:20px;background:var(--soft);color:var(--muted)}
@media(max-width:900px){.portal-grid{grid-template-columns:1fr}.attention{align-items:flex-start}.attention-list{min-width:45%}}
@media(max-width:650px){.portal-hero{display:block}.attention,.home-care-offer{display:block}.attention-list{margin-top:15px;min-width:0}.checkmark{display:block;margin-top:10px}.stage-track{overflow-x:auto;grid-template-columns:repeat(8,70px);padding:4px 0 8px;justify-content:start}.stage-track:before{left:35px;right:auto;width:490px}.stage small{font-size:8px}.details{grid-template-columns:1fr}.portal-top{height:68px}.portal-shell{padding:24px 14px 60px}.portal-card{padding:20px}.portal-login{margin:5vh 16px}.project-title,.payment-list article{align-items:flex-start}.payment-list article{display:grid}.payment-amount{text-align:left;justify-items:start}.home-care-offer .portal-button{display:inline-block;margin-top:12px}.approval-form>div{display:grid}.approval-form button{width:100%}}
