[hidden]{display:none!important}.portal-body{background:#f5f5f1}.auth-view{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.auth-brand-panel{position:relative;background:linear-gradient(145deg,rgba(9,29,22,.94),rgba(9,29,22,.7)),url('assets/duplex-elevation-02.jpg') center/cover;color:#fff;padding:48px 6vw;display:flex;flex-direction:column}.portal-brand{color:#fff}.auth-message{margin:auto 0}.auth-message h1{font:500 clamp(50px,6vw,84px)/.95 var(--serif);letter-spacing:-.045em;margin:0 0 28px}.auth-message h1 em{color:var(--gold-light)}.auth-message p{max-width:540px;color:#cad8d2}.auth-trust{display:flex;gap:22px;flex-wrap:wrap;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#a9bbb3}.auth-trust span:before{content:'✓';color:var(--gold);margin-right:8px}.auth-form-panel{padding:45px 7vw;display:flex;flex-direction:column;background:var(--paper)}.back-link{font-size:12px;color:var(--muted)}.auth-box{width:min(430px,100%);margin:auto}.auth-box h2{font:500 46px var(--serif);margin:0 0 8px}.auth-box>p{font-size:13px;color:var(--muted);margin-bottom:28px}.auth-box form{display:grid;gap:18px}.auth-box label,.settings-card label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.auth-box input,.settings-card input,.settings-card select,.settings-card textarea{width:100%;display:block;border:1px solid var(--line);padding:14px;background:#fff;margin-top:7px;font:13px var(--sans)}.password-field{position:relative}.password-field button{position:absolute;right:12px;top:17px;border:0;background:transparent;font-size:10px;color:var(--muted)}.form-between{display:flex;justify-content:space-between;align-items:center}.remember{display:flex;align-items:center;gap:7px}.remember input{width:auto;margin:0}.link-button{border:0;background:transparent;text-decoration:underline;font-size:11px;color:var(--forest)}.demo-entry{border-top:1px solid var(--line);margin-top:30px;padding-top:23px;text-align:center;display:grid;gap:7px}.demo-entry span{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:#8b928f}.demo-entry button{border:1px solid var(--forest);background:transparent;padding:12px;color:var(--forest)}.demo-entry small{font-size:9px;color:#9da29f}.account-help{text-align:center;font-size:11px!important;margin-top:22px!important}.account-help a{text-decoration:underline}.security-note{text-align:center;color:#969c99;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.auth-alert{background:#f8e9e7;border:1px solid #dfc3be;color:#8e3e34;padding:11px;font-size:11px;margin-bottom:16px}
.portal-app{min-height:100vh}.portal-sidebar{position:fixed;left:0;top:0;bottom:0;width:250px;background:var(--forest);color:#d8e4df;padding:28px 20px;display:flex;flex-direction:column;z-index:200}.portal-logo{padding:0 8px 30px;border-bottom:1px solid rgba(255,255,255,.13)}.portal-logo .brand-mark{width:32px}.portal-logo strong{font-size:12px}.portal-logo small{font-size:7px}.portal-nav{display:grid;gap:5px;margin-top:30px}.portal-nav button,.sidebar-bottom button,.sidebar-bottom a{border:0;background:transparent;color:#9fb2aa;padding:11px 12px;text-align:left;display:flex;gap:13px;align-items:center;font-size:12px}.portal-nav button span,.sidebar-bottom span{font-size:16px;width:18px}.portal-nav button b{font-size:9px;margin-left:auto;background:rgba(255,255,255,.1);width:20px;height:20px;border-radius:50%;display:grid;place-items:center}.portal-nav button.active,.portal-nav button:hover,.sidebar-bottom button:hover,.sidebar-bottom a:hover{background:rgba(255,255,255,.08);color:#fff}.portal-nav button.active{border-left:2px solid var(--gold)}.sidebar-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.13);padding-top:16px;display:grid}.portal-main{margin-left:250px;min-height:100vh}.portal-header{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;position:sticky;top:0;z-index:90}.portal-header>div:first-of-type small{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#8c9490}.portal-header h2{font:500 19px var(--serif);margin:3px 0 0}.header-actions{display:flex;align-items:center;gap:13px;position:relative}.demo-badge{background:#fff2ce;color:#74530f;padding:5px 8px;font-size:8px;letter-spacing:.1em}.notification-button{position:relative;width:35px;height:35px;border:1px solid var(--line);background:#fff;border-radius:50%}.notification-button i{position:absolute;width:6px;height:6px;border-radius:50%;background:#d57f5d;right:5px;top:5px}.user-chip{display:flex;align-items:center;gap:9px;border:0;background:transparent;text-align:left}.user-chip>span{width:34px;height:34px;background:#dce7e1;color:var(--forest);border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:600}.user-chip div{display:grid}.user-chip b{font-size:11px}.user-chip small{font-size:9px;color:var(--muted)}.user-menu{display:none;position:absolute;right:0;top:49px;width:165px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 35px rgba(18,35,29,.12);padding:8px}.user-menu.open{display:grid}.user-menu button{border:0;background:transparent;text-align:left;padding:9px;font-size:11px}.user-menu button:hover{background:#f1f2ee}.sidebar-toggle{display:none}.portal-content{padding:42px;max-width:1540px;margin:auto}.portal-section{display:none}.portal-section.active{display:block}.welcome-row,.section-top{display:flex;align-items:end;justify-content:space-between;margin-bottom:32px}.welcome-row h1,.section-top h1{font:500 clamp(35px,4vw,48px) var(--serif);margin:0 0 7px;letter-spacing:-.025em}.welcome-row p,.section-top p{font-size:13px;color:var(--muted);margin:0}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.metric-grid article{background:#fff;border:1px solid var(--line);padding:24px}.metric-grid small{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.metric-grid strong{display:block;font:500 31px var(--serif);color:var(--forest);margin:10px 0 6px}.metric-grid span{font-size:10px;color:#8d9692}.metric-grid .positive{color:#428261}.portal-grid-main{display:grid;grid-template-columns:1.65fr .85fr;gap:20px}.portfolio-card,.activity-card,.support-card,.timeline-card,.update-feed,.settings-card{background:#fff;border:1px solid var(--line)}.portfolio-card{padding:28px}.card-heading{display:flex;justify-content:space-between;align-items:start}.card-heading small{font-size:8px;letter-spacing:.14em;color:#779188}.card-heading h3{font:500 23px var(--serif);margin:5px 0 22px}.status-pill{font-size:9px;text-transform:uppercase;letter-spacing:.08em;padding:6px 9px;border-radius:20px;background:#e8f3ed;color:#3c7258;white-space:nowrap}.investment-visual{display:grid;grid-template-columns:1.1fr .9fr;background:#f2f2ed}.investment-visual img{height:210px;object-fit:cover}.investment-visual>div{padding:30px}.investment-visual small{font-size:9px;color:var(--muted);text-transform:uppercase}.investment-visual strong{font:500 38px var(--serif);display:block;margin:7px 0}.investment-visual p{font-size:10px;color:var(--muted);margin-top:7px}.progress-bar{height:5px;background:#dcded9}.progress-bar i{display:block;height:100%;background:var(--gold)}.investment-stats{display:grid;grid-template-columns:repeat(4,1fr);padding:22px 0;border-bottom:1px solid var(--line)}.investment-stats span+span{border-left:1px solid var(--line);padding-left:18px}.investment-stats small,.opportunity-metrics small,.progress-summary small{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);display:block}.investment-stats b{font-size:13px}.card-link{border:0;background:transparent;padding:20px 0 0;width:100%;display:flex;justify-content:space-between;font-size:11px}.side-stack{display:grid;gap:20px}.activity-card{padding:24px}.activity-card .card-heading h3{font-size:19px}.activity-card .card-heading button{border:0;background:transparent;font-size:9px;color:var(--muted)}.activity-list>div{display:flex;gap:12px;padding:15px 0;border-top:1px solid #ecece7}.activity-list i{width:30px;height:30px;border-radius:50%;background:#eef2ef;display:grid;place-items:center;font-style:normal;font-size:11px}.activity-list p{margin:0}.activity-list b,.activity-list small{display:block}.activity-list b{font-size:10px}.activity-list small{font-size:8px;color:var(--muted);margin-top:3px}.support-card{padding:24px;background:var(--forest);color:#fff}.support-card>small{font-size:8px;color:var(--gold);letter-spacing:.14em}.support-card h3{font:500 21px var(--serif);margin:15px 0 8px}.support-card p{font-size:10px;color:#9db0a8}.support-card a{font-size:10px;color:var(--gold-light)}.portal-disclaimer{font-size:8px;color:#969d99;margin-top:17px}
.segmented{border:1px solid var(--line);background:#fff;padding:3px}.segmented button{border:0;background:transparent;padding:8px 11px;font-size:9px}.segmented button.active{background:var(--forest);color:#fff}.investment-list{display:grid;gap:14px}.investment-row{background:#fff;border:1px solid var(--line);padding:18px;display:grid;grid-template-columns:150px 2fr repeat(3,1fr) auto;gap:22px;align-items:center}.investment-row img{height:90px;object-fit:cover}.investment-row h3{font:500 21px var(--serif);margin:9px 0 3px}.investment-row p{font-size:10px;color:var(--muted);margin:0}.investment-row small{font-size:8px;color:var(--muted);text-transform:uppercase;display:block}.investment-row b{font-size:12px}.investment-row button{border:0;background:transparent;font-size:10px}.empty-investments{background:#fff;border:1px solid var(--line);padding:60px;text-align:center}.empty-investments>span{width:50px;height:50px;border-radius:50%;background:#edf3ef;display:grid;place-items:center;margin:auto;color:#4d8166}.empty-investments h3{font:500 23px var(--serif);margin:15px 0 5px}.empty-investments p{font-size:11px;color:var(--muted)}.progress-summary{display:grid;grid-template-columns:1.4fr 1fr 1fr;background:var(--forest);color:#fff;margin-bottom:20px}.progress-summary>div{padding:25px}.progress-summary>div+div{border-left:1px solid rgba(255,255,255,.16)}.progress-summary strong{font:500 24px var(--serif);display:block;margin:8px 0}.progress-summary p{font-size:9px;color:#91a69d;margin:0}.progress-bar.large{margin-top:10px;background:rgba(255,255,255,.15)}.progress-layout{display:grid;grid-template-columns:1.5fr .7fr;gap:20px}.timeline-card,.update-feed{padding:28px}.timeline-card>h3,.update-feed>h3{font:500 22px var(--serif);margin-bottom:28px}.timeline>div{display:grid;grid-template-columns:32px 1fr;gap:16px;position:relative;padding-bottom:30px}.timeline>div:before{content:'';position:absolute;left:12px;top:25px;bottom:0;width:1px;background:var(--line)}.timeline>div:last-child:before{display:none}.timeline i{width:25px;height:25px;border:1px solid #c7cbc8;border-radius:50%;background:#fff;z-index:1;display:grid;place-items:center;font-style:normal;font-size:9px}.timeline .done i{background:var(--forest);border-color:var(--forest);color:#fff}.timeline .current i{border:6px solid #e5d2a8;background:var(--gold)}.timeline small{font-size:8px;color:#8b9490;letter-spacing:.1em}.timeline h4{font:500 17px var(--serif);margin:4px 0}.timeline p{font-size:10px;color:var(--muted);margin:0}.mini-progress{height:3px;background:#e2e2dd;margin-top:12px}.mini-progress span{display:block;height:100%;background:var(--gold)}.update-feed article{padding:20px 0;border-top:1px solid var(--line)}.update-feed small{font-size:8px;color:#8c9490}.update-feed h4{font:500 17px var(--serif);margin:8px 0}.update-feed p{font-size:10px;color:var(--muted)}.update-feed button{border:0;background:transparent;padding:0;font-size:9px;text-decoration:underline}.document-search{border:1px solid var(--line);background:#fff;padding:7px 11px;font-size:12px}.document-search input{border:0;outline:0;margin-left:7px;background:transparent}.document-security{display:flex;gap:13px;background:#eaf1ed;border:1px solid #cfded6;padding:16px;margin-bottom:20px;color:#315f49}.document-security div{display:grid}.document-security b{font-size:10px}.document-security span{font-size:9px}.document-tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:0}.document-tabs button{border:0;background:transparent;padding:12px 15px;font-size:10px}.document-tabs button.active{border-bottom:2px solid var(--forest);font-weight:600}.portal-doc-list article{display:grid;grid-template-columns:55px 2fr 1fr .5fr auto;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-top:0;padding:16px 20px}.file-icon{width:38px;height:44px;background:#f3e7e4;color:#9a493d;display:grid;place-items:center;font-size:8px;font-weight:bold}.file-icon.sheet{background:#e2efe7;color:#347051}.portal-doc-list h3{font:500 16px var(--serif);margin:0}.portal-doc-list p{font-size:9px;color:var(--muted);margin:2px 0}.portal-doc-list>article>span{font-size:9px}.portal-doc-list span small{display:block;color:var(--muted);text-transform:uppercase;font-size:7px}.portal-doc-list button{border:1px solid var(--line);background:#fff;padding:9px;font-size:9px}.empty-state{text-align:center;padding:50px;background:#fff;border:1px solid var(--line);font-size:12px;color:var(--muted)}
.opportunity-feature{display:grid;grid-template-columns:1fr 1fr;background:var(--forest);color:#fff}.opportunity-feature>img{height:100%;min-height:420px;object-fit:cover}.opportunity-feature>div{padding:45px}.open-dot{background:#dff2e7;color:#2d6b4a}.opportunity-feature h2{font:500 40px var(--serif);margin:20px 0 10px}.opportunity-feature>div>p{font-size:12px;color:#aec0b8}.opportunity-metrics{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0}.opportunity-metrics span{border-top:1px solid rgba(255,255,255,.2);padding-top:12px}.opportunity-metrics small{color:#91a49c}.opportunity-metrics b{font:500 20px var(--serif)}.opportunity-actions{display:flex;gap:9px}.button.outline{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff}.upcoming-heading{margin:45px 0 20px}.upcoming-heading h2{font:500 29px var(--serif);margin:0}.upcoming-heading p{font-size:11px;color:var(--muted)}.upcoming-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.upcoming-grid article{padding:28px;background:#fff;border:1px solid var(--line)}.upcoming-grid article>span{font-size:8px;letter-spacing:.13em;color:#6d7f77}.upcoming-grid h3{font:500 22px var(--serif);margin:15px 0 5px}.upcoming-grid p{font-size:10px;color:var(--muted)}.interest-button{border:0;border-bottom:1px solid var(--ink);background:transparent;padding:8px 0;font-size:10px}.muted-project{background:#eee!important}.settings-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;align-items:start}.settings-card{padding:28px;margin-bottom:20px}.settings-card h3{font:500 22px var(--serif);margin-bottom:22px}.settings-card form,.settings-card{gap:18px}.settings-card label{display:block;margin-bottom:16px}.settings-card p{font-size:11px;color:var(--muted)}.outline-action{border:1px solid var(--line);background:#fff;padding:10px;font-size:10px}.contact-manager{background:var(--forest);color:#fff}.contact-manager small{font-size:8px;color:var(--gold)}.contact-manager h3{margin:12px 0 2px}.contact-manager p{color:#96aaa1}.contact-manager a{font-size:10px;color:var(--gold-light)}.toast{position:fixed;right:25px;bottom:25px;background:var(--forest);color:#fff;padding:14px 20px;font-size:11px;box-shadow:0 10px 30px rgba(0,0,0,.2);transform:translateY(100px);opacity:0;transition:.3s;z-index:999}.toast.show{transform:none;opacity:1}
@media(max-width:1100px){.metric-grid{grid-template-columns:1fr 1fr}.portal-grid-main,.progress-layout{grid-template-columns:1fr}.investment-row{grid-template-columns:120px 2fr 1fr 1fr}.investment-row>div:nth-of-type(4),.investment-row>button{display:none}.portal-doc-list article{grid-template-columns:45px 2fr 1fr auto}.portal-doc-list article>span:nth-of-type(2){display:none}}
@media(max-width:800px){.auth-view{grid-template-columns:1fr}.auth-brand-panel{min-height:360px;padding:30px}.auth-trust{display:none}.auth-form-panel{padding:30px 22px;min-height:650px}.portal-sidebar{transform:translateX(-100%);transition:.3s}.portal-sidebar.open{transform:none}.portal-main{margin-left:0}.sidebar-toggle{display:block;border:0;background:transparent}.portal-header{padding:0 18px}.portal-header>div:first-of-type{display:none}.portal-content{padding:24px 18px}.user-chip div,.user-chip>i{display:none}.welcome-row,.section-top{align-items:start;gap:20px}.welcome-row .button{display:none}.portal-grid-main{grid-template-columns:1fr}.investment-visual{grid-template-columns:1fr}.investment-stats{grid-template-columns:1fr 1fr;gap:15px}.investment-stats span+span{border:0;padding:0}.investment-row{grid-template-columns:90px 1fr}.investment-row>div:nth-of-type(n+2){display:none}.progress-summary{grid-template-columns:1fr}.progress-summary>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.15)}.portal-doc-list article{grid-template-columns:45px 1fr auto}.portal-doc-list article>span{display:none}.opportunity-feature{grid-template-columns:1fr}.opportunity-feature>img{min-height:280px}.upcoming-grid,.settings-grid{grid-template-columns:1fr}.document-search{display:none}}
@media(max-width:520px){.metric-grid{grid-template-columns:1fr}.auth-message h1{font-size:48px}.portal-content{padding:20px 12px}.welcome-row h1,.section-top h1{font-size:34px}.section-top{flex-direction:column}.segmented{display:flex;width:100%;box-sizing:border-box}.segmented button{flex:1;padding:10px 5px}.investment-row{grid-template-columns:78px 1fr 1fr;gap:13px}.investment-row img{grid-row:1/3;height:78px}.investment-row>div:first-of-type{grid-column:2/4}.investment-row>div:nth-of-type(2),.investment-row>div:nth-of-type(3){display:block}.investment-row>div:nth-of-type(4),.investment-row>button{display:none}.investment-row h3{font-size:19px}.opportunity-feature>div{padding:28px}.opportunity-actions{flex-direction:column}.upcoming-grid{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}}
