:root{--deep:#073f39;--green:#087b69;--green2:#0a917a;--lime:#b6ed54;--ink:#123f3a;--muted:#687f7b;--paper:#f6faf8;--white:#fff;--line:#dcece7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:var(--paper);color:var(--ink);line-height:1.55}.wrap{max-width:1180px;margin:auto;padding-left:24px;padding-right:24px}.top{height:82px;background:#fff;color:var(--ink);padding:0 max(20px,calc((100% - 1180px)/2 + 24px));display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;box-shadow:0 1px 0 #dbe9e6}.brand,.footer-logo{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.brand strong,.footer-logo strong{display:block;font-size:19px;line-height:1.1}.brand small,.footer-logo small{display:block;font-size:11px;color:#6b817d;margin-top:2px}.brand-mark{width:40px;height:40px;border-radius:11px;background:#07947d;display:grid;place-items:center;font-size:21px;box-shadow:0 5px 15px rgba(8,123,105,.2)}nav{display:flex;align-items:center;gap:27px}nav a{color:#075e54;text-decoration:none;font-weight:700;font-size:14px}nav a:hover{text-decoration:underline}nav .login-link{padding:9px 15px}.hero{position:relative;min-height:650px;overflow:hidden;background:#075e54;color:#fff}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,77,69,.84) 0%,rgba(4,93,82,.66) 48%,rgba(2,61,57,.42) 100%)}.hero-inner{position:relative;z-index:2;min-height:650px;display:flex;align-items:center}.hero-copy{max-width:700px;padding:45px 0 75px}.eyebrow{font-size:12px;letter-spacing:1.2px;font-weight:800;color:#d7f5ef;display:flex;align-items:center;gap:9px}.eyebrow span{width:9px;height:9px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(182,237,84,.15);flex:none}.eyebrow.dark{color:#087565}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(48px,6vw,78px);line-height:1.02;letter-spacing:-3.4px;margin:22px 0 18px;font-weight:800}.hero-copy>p{font-size:19px;max-width:640px;color:#e0f5f1;margin:0 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border-radius:11px;font-weight:800;text-decoration:none;border:1px solid transparent;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn.light{background:#fff;color:#075e54;box-shadow:0 10px 25px rgba(0,0,0,.14)}.btn.glass{color:#fff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.38);backdrop-filter:blur(5px)}.hero-points{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;color:#d1ece7;font-size:12px}.hero-points span:first-child{color:#e8fac5}.ticker{position:absolute;bottom:0;left:0;right:0;z-index:3;overflow:hidden;background:rgba(3,49,45,.78);border-top:1px solid rgba(255,255,255,.16);white-space:nowrap;backdrop-filter:blur(4px)}.ticker-track{display:inline-flex;align-items:center;gap:25px;min-width:max-content;padding:14px 0;font-size:10px;font-weight:900;letter-spacing:1.8px;color:#c7e9e3;animation:marquee 24s linear infinite}.ticker-track i{font-style:normal;color:var(--lime)}@keyframes marquee{to{transform:translateX(-50%)}}.vision{display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:center;padding-top:92px;padding-bottom:92px}.vision-copy h2,.section-head h2,.security-panel h2,.cta h2{font-family:Manrope,sans-serif;color:var(--ink);font-weight:800;letter-spacing:-1.5px;line-height:1.08}.vision-copy h2{font-size:45px;margin:14px 0 18px}.vision-copy p{color:var(--muted);font-size:16px;margin:0 0 14px}.text-link{display:inline-flex;gap:8px;margin-top:10px;color:#087565;font-weight:800;text-decoration:none}.photo-card{background:#fff;border:1px solid var(--line);border-radius:25px;overflow:hidden;box-shadow:0 22px 55px rgba(16,74,67,.11)}.photo-card img{width:100%;height:410px;object-fit:cover;display:block}.photo-caption{display:flex;flex-direction:column;gap:4px;padding:18px 21px 21px}.photo-caption b{font-size:18px}.photo-caption span{font-size:13px;color:var(--muted)}.community{background:#edf7f4;padding:90px 0}.section-head{max-width:800px;margin:0 auto 42px;text-align:center}.section-head .eyebrow{justify-content:center}.section-head h2{font-size:42px;margin:14px 0 12px}.section-head p{color:var(--muted);margin:0}.story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.story{background:#fff;border:1px solid #d8ebe6;border-radius:22px;overflow:hidden;box-shadow:0 10px 25px rgba(18,73,66,.06);transition:.2s}.story:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(18,73,66,.11)}.story-photo{height:240px;overflow:hidden}.story-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s}.story:hover .story-photo img{transform:scale(1.04)}.story-body{padding:18px 20px 21px}.story-body>span{font-size:10px;font-weight:900;letter-spacing:1.1px;color:#07816d}.story h3{font-family:Manrope,sans-serif;font-size:23px;margin:7px 0 7px}.story p{font-size:13px;color:var(--muted);margin:0}.types{padding-top:95px;padding-bottom:90px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:17px 19px 22px;box-shadow:0 10px 28px rgba(17,74,67,.07);position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:455px}.card.featured{border:2px solid #8ccfc0;box-shadow:0 15px 38px rgba(8,118,101,.13)}.popular{position:absolute;right:16px;top:16px;font-size:9px;font-weight:900;background:#e7f7c9;color:#3f681c;padding:6px 9px;border-radius:99px}.card-photo{height:190px;border-radius:17px;margin-bottom:18px;background-size:cover;background-position:center}.card-tag{font-size:10px;letter-spacing:1.1px;font-weight:900;color:#07816d}.card h3{font-family:Manrope,sans-serif;font-size:21px;line-height:1.2;margin:7px 0 10px}.card p{color:var(--muted);margin:0 0 22px;font-size:14px}.card-link{margin-top:auto;color:#075e54;font-weight:900;text-decoration:none}.security{padding-bottom:90px}.security-panel{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px;background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 18px 45px rgba(18,71,65,.08)}.security-photo{height:370px;border-radius:19px;overflow:hidden}.security-photo img{width:100%;height:100%;object-fit:cover}.security-panel h2{font-size:38px;margin:14px 0}.security-panel p{color:var(--muted);margin:0}.cta{background:linear-gradient(115deg,#075e54,#043d39);color:#fff}.cta-inner{min-height:275px;display:flex;align-items:center;justify-content:space-between;gap:35px;padding-top:48px;padding-bottom:48px}.cta h2{color:#fff;font-size:47px;margin:13px 0 8px}.cta p{margin:0;color:#c7eae4;max-width:680px}.footer{background:#032f2d;color:#b9ddd7}.footer-main{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.25fr;gap:42px;padding-top:55px;padding-bottom:45px}.footer-brand{max-width:400px}.footer-brand p{font-size:13px;line-height:1.75;color:#91bdb6;margin:16px 0}.footer-badges{display:flex;flex-wrap:wrap;gap:8px}.footer-badges span{font-size:10px;color:#bce2db;border:1px solid rgba(188,226,219,.16);border-radius:99px;padding:6px 9px}.footer-col{display:flex;flex-direction:column;gap:10px}.footer-col h4{font-size:11px;letter-spacing:1.1px;text-transform:uppercase;color:#e0f4ef;margin:2px 0 7px}.footer-col a,.footer-col span{font-size:13px;color:#a8d0c9;text-decoration:none}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(183,225,217,.12);background:#022724}.footer-bottom-inner{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#739e97}.footer-bottom-inner span:last-child{color:#82aaa4}@media(max-width:900px){nav a:not(.login-link){display:none}.hero{min-height:620px}.hero-inner{min-height:620px}.hero-copy{text-align:left}.vision{grid-template-columns:1fr;gap:38px;padding-top:75px;padding-bottom:75px}.vision-copy{text-align:center}.vision-copy .eyebrow{justify-content:center}.story-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.card{min-height:0}.security-panel{grid-template-columns:1fr;gap:30px}.cta-inner{flex-direction:column;align-items:flex-start}.footer-main{grid-template-columns:1fr 1fr;gap:30px}}@media(max-width:560px){.wrap{padding-left:17px;padding-right:17px}.top{padding:0 17px;height:72px}.brand strong{font-size:16px}.brand small{font-size:10px}.brand-mark{width:36px;height:36px}.hero{min-height:610px;background-position:58% center}.hero-inner{min-height:610px}.hero-copy{padding-top:30px;padding-bottom:65px}.hero h1{font-size:47px;letter-spacing:-2.5px}.hero-copy>p{font-size:16px}.hero-points{font-size:11px;gap:10px}.ticker-track{font-size:9px;gap:18px;padding:11px 0}.vision-copy h2{font-size:35px}.photo-card img{height:300px}.community{padding:72px 0}.section-head h2{font-size:34px}.story-photo{height:220px}.types{padding-top:75px;padding-bottom:70px}.card-photo{height:220px}.security-panel{padding:18px;border-radius:22px}.security-photo{height:280px}.security-panel h2{font-size:31px}.cta h2{font-size:39px}.footer-main{grid-template-columns:1fr;padding-top:40px;gap:27px}.footer-bottom-inner{flex-direction:column;align-items:flex-start;justify-content:center;padding-top:16px;padding-bottom:16px;gap:5px}}
/* Organization chooser - placed immediately after hero */
.types{background:linear-gradient(180deg,#f6faf8 0%,#ffffff 100%);border-radius:0;padding-top:72px}
.types .section-head{margin-bottom:30px}
.types .section-head h2{font-size:38px}
.types .cards{align-items:stretch}
.types .card{min-height:410px}
.types .card-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#087b69;color:#fff;border-radius:9px;padding:11px 14px;text-decoration:none;margin-top:auto}
.types .card-link:hover{background:#075e54}
@media(max-width:900px){.types .cards{grid-template-columns:1fr}.types .card{min-height:0}.types .card-photo{height:190px}}
@media(max-width:560px){.types{padding-top:55px;padding-bottom:55px}.types .section-head h2{font-size:31px}.types .section-head p{font-size:14px}.types .card{padding:14px 15px 18px}.types .card-photo{height:175px}.types .card h3{font-size:20px}}

/* V7: focused landing page — purpose + three organization choices */
.purpose{padding-top:68px;padding-bottom:30px;text-align:center;max-width:900px}
.purpose .eyebrow{justify-content:center}
.purpose h2{font-family:Manrope,sans-serif;font-size:42px;line-height:1.08;letter-spacing:-1.5px;margin:12px 0 10px;color:var(--ink)}
.purpose p{max-width:700px;margin:0 auto;color:var(--muted);font-size:15px}
.types{padding-top:18px;padding-bottom:76px;background:transparent}
.types .cards{grid-template-columns:repeat(3,1fr);gap:22px}
.types .card{min-height:445px}
.types .card-photo{height:220px}
.types .card-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#087b69;color:#fff;border-radius:10px;padding:12px 14px;text-decoration:none;margin-top:auto;font-size:13px}
.types .card-link:hover{background:#075e54;color:#fff}
.footer{margin-top:0}
@media(max-width:900px){.types .cards{grid-template-columns:1fr}.types .card{min-height:0}.types .card-photo{height:230px}}
@media(max-width:560px){.purpose{padding-top:52px;padding-bottom:20px}.purpose h2{font-size:31px}.purpose p{font-size:14px}.types{padding-top:10px;padding-bottom:55px}.types .card{padding:14px 15px 18px}.types .card-photo{height:210px}}


/* V8: clear registration actions and organization icons */
.types .card{position:relative}
.card-icon{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;gap:2px;margin:0 0 15px;background:#e8f7f3;border:1px solid #d2ebe5;box-shadow:0 8px 18px rgba(8,123,105,.08);font-size:27px}
.card-icon span{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.card-icon-shg{background:#eaf4ff;border-color:#d7e8f7}
.card-icon-combo{background:#eef9e3;border-color:#d9edbd}
.card-icon-finance{background:#fff4e5;border-color:#f1dfc0}
.types .card h3{margin-top:3px}
.types .card-link{font-size:13px;min-height:44px}
@media(max-width:560px){.card-icon{width:58px;height:58px;font-size:24px;margin-bottom:13px}}

/* V9 authentication: clear organization selection + professional background graphic */
.auth-page{min-height:100vh;background:#eef7f4;position:relative;overflow-x:hidden}.auth-bg{position:fixed;inset:0;background-image:linear-gradient(90deg,rgba(3,53,48,.91),rgba(3,73,66,.72)),url('auth-bg.svg');background-position:center;background-size:cover;z-index:0}.auth-page .top{position:relative;z-index:3;background:rgba(255,255,255,.97)}.auth-shell{position:relative;z-index:2;max-width:1080px;margin:0 auto;padding:70px 24px 90px;display:grid;grid-template-columns:.8fr 1.2fr;gap:45px;align-items:center}.login-shell{grid-template-columns:1fr 520px;max-width:1050px}.auth-intro{color:#fff;padding:20px}.auth-kicker{display:inline-block;font-size:11px;letter-spacing:1.7px;font-weight:900;color:#dff8c0;background:rgba(182,237,84,.12);border:1px solid rgba(182,237,84,.25);padding:8px 11px;border-radius:99px}.auth-intro h1{font-family:Manrope,sans-serif;font-size:clamp(38px,5vw,60px);line-height:1.04;letter-spacing:-2px;margin:20px 0 15px}.auth-intro p{font-size:17px;color:#d6eee9;max-width:480px;margin:0}.auth-card{padding:30px!important;border-radius:25px!important;box-shadow:0 28px 70px rgba(0,0,0,.22)!important}.auth-card h2{font-family:Manrope,sans-serif;margin:0 0 6px;font-size:28px}.auth-selected{color:var(--muted);font-size:13px;margin:0 0 20px}.type-choices{display:grid;gap:10px;margin-bottom:22px}.type-choice{display:flex;align-items:center;gap:13px;padding:13px 14px;border:1px solid #d8ebe6;border-radius:15px;background:#fbfefd;color:var(--ink);text-decoration:none;transition:.18s}.type-choice:hover{border-color:#74c9b8;transform:translateY(-1px)}.type-choice.active{border:2px solid #0a917a;background:#effaf7;box-shadow:0 8px 20px rgba(8,123,105,.08)}.type-choice b{display:block;font-size:14px;line-height:1.25}.type-choice small{display:block;color:var(--muted);font-size:11px;line-height:1.4;margin-top:3px}.choice-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;flex:none;font-size:22px;background:#e9f6f2}.choice-icon.shg{background:#eaf4ff}.choice-icon.combo{background:#eef9df}.choice-icon.finance{background:#fff2df}.auth-submit{width:100%;background:#087b69;color:#fff;border:none;cursor:pointer}.auth-submit:hover{background:#075e54}.auth-note{font-size:11px;color:#78908b;text-align:center;margin:15px 0 0}.auth-page .field label{font-weight:700}.auth-page .field input{width:100%;border:1px solid #cfe3de;border-radius:10px;padding:12px 13px;font:inherit;background:#fff}.auth-page .notice{margin-bottom:15px}
@media(max-width:850px){.auth-shell,.login-shell{grid-template-columns:1fr;gap:18px;padding:42px 17px 60px}.auth-intro{padding:10px 5px 0}.auth-intro h1{font-size:40px}.auth-intro p{font-size:15px}.auth-card{padding:22px!important}.auth-bg{background-position:62% center}}


/* V10: use only the main community hero photograph on the homepage. Organization cards use clean icons only. */
.types .card-photo{display:none!important}
.types .card{padding-top:28px}

/* V11: organization cards must never display photographs. */
.card-photo,.types .card-photo,.card img,.types .card img{display:none!important;}
.types .card{padding-top:28px!important;}
/* V12 application dashboard and data modules. Homepage styles above remain unchanged. */
.app-page{background:#f4f9f7}.app-top{height:78px;background:#fff;border-bottom:1px solid #dcece7;display:flex;align-items:center;justify-content:space-between;padding:0 max(18px,calc((100% - 1240px)/2 + 18px));position:sticky;top:0;z-index:50}.app-brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.app-brand b{display:block;font-size:18px}.app-brand small{display:block;color:#6b817d;font-size:10px}.app-mark{width:40px;height:40px;border-radius:12px;background:#087b69;color:#fff;display:grid;place-items:center}.app-org{display:flex;align-items:center;gap:18px;color:#52716b;font-size:13px}.app-org a{color:#075e54;font-weight:800}.app-layout{max-width:1240px;margin:auto;display:grid;grid-template-columns:225px 1fr;min-height:calc(100vh - 78px)}.app-nav{padding:25px 13px;border-right:1px solid #dcece7;background:#fff}.app-nav a{display:flex;align-items:center;gap:10px;color:#466762;text-decoration:none;padding:11px 13px;border-radius:10px;font-size:13px;font-weight:700;margin-bottom:4px}.app-nav a:hover,.app-nav .nav-home{background:#eaf7f3;color:#075e54}.nav-label{font-size:9px;letter-spacing:1.3px;font-weight:900;color:#91aaa4;padding:18px 13px 7px}.app-main{padding:34px 28px 70px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px}.page-heading h1{font-family:Manrope,sans-serif;font-size:36px;letter-spacing:-1.2px;margin:6px 0 5px}.page-heading p{color:#6a817c;margin:0;font-size:14px}.kicker{font-size:10px;letter-spacing:1.4px;font-weight:900;color:#087b69}.btn{cursor:pointer;font:inherit}.btn.primary{background:#087b69;color:#fff;border:0}.btn.secondary{background:#fff;color:#075e54;border:1px solid #cfe5df}.btn:disabled{opacity:.5;cursor:not-allowed}.flash,.notice,.error{border-radius:12px;padding:12px 15px;margin-bottom:18px;font-size:13px}.flash{background:#e7f8ef;color:#176348;border:1px solid #bce6d0}.notice{background:#f2f7f5;color:#58726c;border:1px solid #d8e8e4}.error{background:#fff0ef;color:#9a3932;border:1px solid #f0c4c0}.dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.dash-card{background:#fff;border:1px solid #dcece7;border-radius:18px;padding:20px;text-decoration:none;color:var(--ink);min-height:175px;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(16,73,66,.05)}.dash-card:hover{border-color:#8ccfc0;transform:translateY(-2px)}.dash-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;font-size:22px;margin-bottom:15px}.dash-icon.blue{background:#eaf4ff}.dash-icon.orange{background:#fff2df}.dash-icon.green{background:#e7f7f2}.dash-icon.lime{background:#eff9dc}.dash-icon.navy{background:#e8f0fa}.dash-icon.purple{background:#f0ebfa}.dash-card small{font-size:9px;letter-spacing:1.1px;color:#78918b;font-weight:900}.dash-card strong{font-size:27px;margin:4px 0 6px}.dash-card>span:last-child{font-size:12px;color:#62807a;margin-top:auto}.quick-panel{margin-top:22px;background:#075e54;border-radius:20px;padding:24px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px}.quick-panel h2{font-family:Manrope,sans-serif;margin:5px 0 4px;font-size:23px}.quick-panel p{margin:0;color:#c7eae4;font-size:12px}.quick-actions{display:flex;gap:9px;flex-wrap:wrap}.quick-actions .btn{padding:10px 13px;font-size:12px}.module-grid{display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start}.form-card,.table-card{background:#fff;border:1px solid #dcece7;border-radius:18px;padding:20px;box-shadow:0 8px 24px rgba(16,73,66,.05)}.form-card h2,.table-card h2{font-family:Manrope,sans-serif;font-size:19px;margin:0 0 17px}.form-card form{display:flex;flex-direction:column;gap:12px}.form-card label{font-size:12px;font-weight:800;color:#44645e}.form-card input,.form-card select,.form-card textarea{display:block;width:100%;margin-top:5px;border:1px solid #cfe3de;border-radius:9px;padding:10px 11px;background:#fff;color:#173e39;font:inherit;font-size:13px}.two-fields,.three-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.three-fields{grid-template-columns:repeat(3,1fr)}.form-card .btn{width:100%;margin-top:3px}.table-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.table-head h2{margin:0}.table-head span{font-size:11px;color:#79918c}.table-scroll{overflow:auto}.table-card table{width:100%;border-collapse:collapse;font-size:12px}.table-card th{text-align:left;color:#728983;font-size:9px;letter-spacing:.8px;text-transform:uppercase;border-bottom:1px solid #e1eeeb;padding:9px 8px;white-space:nowrap}.table-card td{padding:12px 8px;border-bottom:1px solid #edf3f1;color:#3c5c56;vertical-align:top}.empty{text-align:center!important;color:#8ba09c!important;padding:30px!important}.status{display:inline-block;padding:4px 8px;border-radius:99px;font-size:9px;font-weight:800;text-transform:uppercase}.status.active{background:#e5f7ed;color:#17704e}
@media(max-width:900px){.app-layout{grid-template-columns:1fr}.app-nav{display:flex;overflow:auto;border-right:0;border-bottom:1px solid #dcece7;padding:9px 12px;position:sticky;top:78px;z-index:40}.app-nav a{white-space:nowrap;margin:0 3px;padding:9px 11px}.app-nav .nav-label{display:none}.app-main{padding:25px 17px 60px}.dash-grid{grid-template-columns:repeat(2,1fr)}.module-grid{grid-template-columns:1fr}.quick-panel{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.app-top{height:70px;padding:0 15px}.app-org>span{display:none}.app-brand b{font-size:15px}.app-mark{width:36px;height:36px}.app-nav{top:70px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:31px}.dash-grid{grid-template-columns:1fr}.dash-card{min-height:145px}.two-fields,.three-fields{grid-template-columns:1fr}.form-card,.table-card{padding:16px}.table-card{min-width:0}.table-card table{min-width:650px}}

/* V13: dashboard workspace. Homepage remains unchanged. */
.dashboard-page{background:#edf6f3}
.dashboard-page .app-nav{background:#064e47;color:#fff;border-right:0;min-height:calc(100vh - 78px);padding-top:20px}
.dashboard-page .app-nav a{color:#d8eeea;border-radius:10px}
.dashboard-page .app-nav a:hover,.dashboard-page .app-nav .nav-home{background:#0b927b;color:#fff}
.dashboard-page .app-nav .nav-label{color:#8bc9bd}
.page-nav-actions{display:flex;align-items:center;gap:9px;margin:0 0 18px;flex-wrap:wrap}.page-nav-actions .btn{width:auto;min-width:92px;padding:10px 14px}.page-nav-actions a{text-decoration:none}.page-nav-actions .page-back{cursor:pointer}@media(max-width:560px){.page-nav-actions{margin-bottom:14px}.page-nav-actions .btn{flex:1}}
.dashboard-page .app-main{position:relative;overflow:hidden;background:linear-gradient(180deg,#f4faf8 0%,#edf6f3 100%)}
.dashboard-page .app-main:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url('dashboard-bg.svg');background-repeat:no-repeat;background-position:right top;background-size:680px auto;opacity:.22}
.dashboard-shell{position:relative;z-index:1;max-width:1100px;margin:0 auto}
.dashboard-hero{border:1px solid #d6ebe5;border-radius:22px;padding:30px 32px;margin-bottom:18px;min-height:190px;background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(232,248,242,.78));box-shadow:0 12px 32px rgba(11,74,66,.06)}
.dashboard-hero-copy{max-width:720px;padding-top:4px}.dashboard-hero h1{font-family:Manrope,sans-serif;font-size:clamp(32px,4vw,48px);line-height:1.05;letter-spacing:-1.7px;margin:9px 0 10px;color:#073f39}.dashboard-hero p{margin:0;color:#52716b;font-size:15px}
.dashboard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.stat-card{min-height:154px;background:#fff;border:1px solid #d9ebe6;border-radius:18px;padding:18px;text-decoration:none;color:#123f3a;box-shadow:0 8px 22px rgba(16,73,66,.055);display:flex;flex-direction:column;transition:.18s}.stat-card:hover{transform:translateY(-2px);border-color:#82cbbd}.stat-icon{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;font-size:21px;margin-bottom:12px}.stat-members .stat-icon{background:#dff7e9}.stat-borrowers .stat-icon{background:#e5f0ff}.stat-loans .stat-icon{background:#eee8ff}.stat-repayments .stat-icon{background:#ffe7eb}.stat-accounts .stat-icon{background:#def7ef}.stat-events .stat-icon{background:#fff0d9}.stat-label{font-size:9px;letter-spacing:1.1px;color:#6d8983;font-weight:900}.stat-card strong{font-size:25px;margin:4px 0 4px;font-family:Manrope,sans-serif}.stat-link{font-size:11px;color:#087b69;font-weight:800;margin-top:auto}
.trial-panel{display:flex;align-items:center;gap:18px;background:linear-gradient(100deg,#edf7ff,#e9f7f3);border:1px solid #cde4ee;border-radius:18px;padding:20px 22px;margin-bottom:18px}.trial-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#e2f0ff;color:#1877d3;font-size:29px;flex:none}.trial-copy{flex:1}.trial-copy>span{font-size:9px;letter-spacing:1px;font-weight:900;color:#66827c}.trial-copy strong{display:block;font-family:Manrope,sans-serif;font-size:24px;margin-top:2px}.trial-copy p{margin:2px 0 9px;color:#628079;font-size:12px}.trial-bar{height:7px;border-radius:99px;background:#dbe9e6;overflow:hidden;max-width:520px}.trial-bar i{display:block;width:34%;height:100%;background:#0a917a;border-radius:99px}
.dashboard-lower{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.activity-panel,.dashboard-quick{border-radius:18px;min-height:285px}.activity-panel{background:#fff;border:1px solid #d9ebe6;padding:21px;box-shadow:0 8px 22px rgba(16,73,66,.05)}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.panel-title h2{font-family:Manrope,sans-serif;font-size:18px;margin:0}.panel-title span{font-size:10px;color:#7c9690}.empty-activity{text-align:center;padding:48px 20px 30px;color:#78908b}.empty-icon{font-size:35px;color:#a9c0bb;margin-bottom:8px}.empty-activity strong{display:block;font-family:Manrope,sans-serif;color:#4d6c66}.empty-activity p{font-size:12px;margin:5px auto 0;max-width:330px}.dashboard-quick{margin-top:0;display:block;background:#fff;color:#123f3a;border:1px solid #d9ebe6;padding:21px;box-shadow:0 8px 22px rgba(16,73,66,.05)}.dashboard-quick h2{margin:5px 0 4px;font-family:Manrope,sans-serif;font-size:21px}.dashboard-quick p{color:#6c8680;font-size:12px;margin:0 0 14px}.dashboard-quick .quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-btn{padding:14px 10px;border-radius:12px;text-decoration:none;font-size:11px;font-weight:900;text-align:center;border:1px solid transparent}.quick-btn.green{background:#e1f7e9;color:#17704e}.quick-btn.blue{background:#e8f1ff;color:#216dc8}.quick-btn.purple{background:#f0eaff;color:#6743c7}.quick-btn.red{background:#ffe9eb;color:#b33c45}.quick-btn.gold{background:#fff1d8;color:#9a650e}.quick-btn.teal{background:#e0f7f2;color:#087b69}
@media(max-width:900px){.dashboard-page .app-nav{background:#fff;color:inherit}.dashboard-page .app-nav a{color:#466762}.dashboard-page .app-nav a:hover,.dashboard-page .app-nav .nav-home{color:#075e54;background:#eaf7f3}.dashboard-page .app-nav .nav-label{color:#91aaa4}.dashboard-stats{grid-template-columns:repeat(2,1fr)}.dashboard-lower{grid-template-columns:1fr}.dashboard-page .app-main:before{background-size:520px auto}}
@media(max-width:560px){.dashboard-page .app-main{padding:18px 13px 55px}.dashboard-hero{padding:23px 20px;min-height:175px}.dashboard-hero h1{font-size:34px}.dashboard-hero p{font-size:13px}.dashboard-stats{grid-template-columns:1fr}.stat-card{min-height:135px}.trial-panel{align-items:flex-start;flex-wrap:wrap}.trial-panel .btn{width:100%}.dashboard-quick .quick-actions{grid-template-columns:1fr}.dashboard-page .app-main:before{background-size:420px auto;opacity:.16}}

/* V14: full navigation drawer + member ID uploads. */
.drawer-toggle{display:none;border:0;background:#eaf7f3;color:#075e54;border-radius:10px;width:42px;height:42px;font-size:23px;cursor:pointer}
.drawer-backdrop{display:none}
.drawer-head{display:none}
.id-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.form-card input[type=file]{padding:8px;background:#f8fbfa}
.form-card small{display:block;color:#829792;font-size:9px;margin-top:4px;font-weight:600}
.id-link{color:#087b69;font-weight:800;text-decoration:none}
.id-link:hover{text-decoration:underline}
@media(max-width:900px){
  .drawer-toggle{display:grid;place-items:center}
  .app-layout{display:block}
  .app-nav{
    position:fixed!important;left:0;top:0;bottom:0;width:min(310px,86vw);height:100vh!important;
    z-index:100;transform:translateX(-105%);transition:transform .22s ease;overflow:auto;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    padding:18px 12px 28px!important;background:#064e47!important;color:#fff!important;
    box-shadow:12px 0 35px rgba(0,0,0,.18);border:0!important
  }
  body.drawer-open .app-nav{transform:translateX(0)}
  .drawer-backdrop{position:fixed;inset:0;background:rgba(0,30,27,.45);z-index:90;display:block;opacity:0;visibility:hidden;transition:.2s}
  body.drawer-open .drawer-backdrop{opacity:1;visibility:visible}
  .drawer-head{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 18px;color:#fff;font-family:Manrope,sans-serif;font-size:17px}
  .drawer-head button{border:0;background:rgba(255,255,255,.1);color:#fff;border-radius:9px;width:36px;height:36px;font-size:25px;cursor:pointer}
  .app-nav a{display:flex!important;align-items:center;gap:12px;color:#e0f4f0!important;padding:13px 13px!important;margin:2px 0!important;border-radius:11px!important;font-weight:800}
  .app-nav a:hover,.app-nav .nav-home{background:#0b927b!important;color:#fff!important}
  .app-nav .nav-label{display:block!important;color:#8bc9bd!important;padding:16px 10px 6px!important;font-size:9px!important;letter-spacing:1.2px!important}
  .app-main{width:100%}
}
@media(max-width:560px){
  .app-top{position:sticky;top:0;z-index:80}
  .app-org>span{display:none}
  .id-upload-grid{grid-template-columns:1fr}
}

/* V15 drawer fix: final overrides must come last. */
@media (max-width: 1000px){
  .app-layout{display:block!important;max-width:none!important}
  .app-nav{
    position:fixed!important;
    left:0!important;right:auto!important;top:0!important;bottom:0!important;
    width:min(310px,86vw)!important;height:100vh!important;
    z-index:1000!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    overflow-y:auto!important;overflow-x:hidden!important;
    padding:18px 12px 28px!important;
    transform:translateX(-110%)!important;
    transition:transform .22s ease!important;
    background:#064e47!important;
    border:0!important;
  }
  body.drawer-open .app-nav{transform:translateX(0)!important}
  .app-nav a{
    display:flex!important;
    width:100%!important;
    flex:0 0 auto!important;
    white-space:normal!important;
    box-sizing:border-box!important;
  }
  .app-nav .nav-label{display:block!important;flex:0 0 auto!important}
  .drawer-toggle{display:grid!important;place-items:center!important;position:relative!important;z-index:1100!important}
  .drawer-backdrop{
    display:block!important;position:fixed!important;inset:0!important;
    z-index:900!important;background:rgba(0,30,27,.48)!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  }
  body.drawer-open .drawer-backdrop{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  .drawer-head{display:flex!important;flex:0 0 auto!important}
  .app-main{width:100%!important}
}
@media (min-width:1001px){
  .drawer-toggle,.drawer-backdrop,.drawer-head{display:none!important}
}

/* V16: working left-side drawer button. */
.app-top{justify-content:flex-start;gap:12px}
.drawer-toggle{
  display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;
  border:1px solid #cfe3de;background:#eaf7f3;color:#075e54;border-radius:10px;
  font-size:23px;line-height:1;cursor:pointer;z-index:101;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
}
.app-org{margin-left:auto}
@media(min-width:901px){
  .drawer-toggle{display:none}
}
@media(max-width:900px){
  .app-layout{display:block!important;max-width:none!important}
  .app-nav{
    position:fixed!important;left:0!important;top:0!important;bottom:0!important;
    width:min(310px,86vw)!important;height:100vh!important;max-height:none!important;
    z-index:100!important;transform:translateX(-110%)!important;
    transition:transform .22s ease!important;overflow-y:auto!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    padding:18px 12px 28px!important;background:#064e47!important;
    border:0!important;box-shadow:12px 0 35px rgba(0,0,0,.2)!important;
  }
  body.drawer-open .app-nav{transform:translateX(0)!important}
  .drawer-backdrop{
    display:block!important;position:fixed!important;inset:0!important;
    background:rgba(0,30,27,.5)!important;z-index:90!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transition:opacity .2s ease,visibility .2s ease!important;
  }
  body.drawer-open .drawer-backdrop{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  .drawer-head{display:flex!important;align-items:center;justify-content:space-between;padding:6px 8px 18px;color:#fff;font-size:17px}
  .drawer-head button{border:0;background:rgba(255,255,255,.1);color:#fff;border-radius:9px;width:36px;height:36px;font-size:25px;cursor:pointer}
  .app-nav a{display:flex!important;align-items:center;gap:12px!important;color:#e0f4f0!important;padding:13px!important;margin:2px 0!important;border-radius:11px!important;white-space:normal!important}
  .app-nav a:hover,.app-nav .nav-home{background:#0b927b!important;color:#fff!important}
  .app-nav .nav-label{display:block!important;color:#8bc9bd!important;padding:16px 10px 6px!important;font-size:9px!important;letter-spacing:1.2px!important}
  .app-main{width:100%!important}
}
@media(max-width:560px){
  .app-top{height:70px!important;padding:0 14px!important;gap:10px!important}
  .drawer-toggle{display:grid!important;width:40px!important;height:40px!important;flex-basis:40px!important;font-size:22px!important}
  .app-org>span{display:none!important}
  .app-brand b{font-size:15px!important}
  .app-mark{width:36px!important;height:36px!important}
}

.dashboard-purpose{display:block;margin-top:8px;color:#597772;font-size:14px;line-height:1.6}
.dashboard-hero .kicker{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* V19: approved dashboard growth image on the hero's right side. */
.dashboard-hero{position:relative;overflow:hidden;background:
  linear-gradient(90deg,#ffffff 0%,#f8fcf8 48%,rgba(245,251,242,.92) 64%,rgba(232,247,224,.68) 100%);}
.dashboard-hero::after{content:"";position:absolute;right:0;top:0;width:39%;height:100%;
  background:url("dashboard-top-image.jpg") center right/cover no-repeat;
  opacity:.96;pointer-events:none;}
.dashboard-hero-copy{position:relative;z-index:2;max-width:63%;}
@media(max-width:700px){
  .dashboard-hero{min-height:235px;padding:25px 22px;}
  .dashboard-hero::after{width:46%;opacity:.42;}
  .dashboard-hero-copy{max-width:100%;padding-right:18px;}
}
/* V20 member contributions */
.contribution-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 18px}.contribution-summary>div{background:#fff;border:1px solid #dfeee9;border-radius:18px;padding:18px 20px;box-shadow:0 10px 28px rgba(4,78,71,.05)}.contribution-summary span{display:block;color:#6d8580;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.contribution-summary strong{display:block;margin-top:7px;color:#075e54;font-size:22px}.stat-contributions .stat-icon{background:#fff0cf}.required-ref small{color:#087b69!important;font-weight:800}.form-card select,.form-card textarea{width:100%;box-sizing:border-box;border:1px solid #d5e6e1;border-radius:13px;padding:12px 13px;background:#fff;color:#174b45;font:inherit}.form-card textarea{resize:vertical}.table-card small{color:#81958f}.stat-contributions strong{font-size:20px}
@media(max-width:700px){.contribution-summary{grid-template-columns:1fr}.module-grid{grid-template-columns:1fr}.table-scroll{overflow-x:auto}.table-scroll table{min-width:760px}}

.bank-priority{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:20px 22px;border-radius:20px;background:linear-gradient(135deg,#e7f8f1,#f7fcfa);border:1px solid #b9e3d5;box-shadow:0 8px 24px rgba(5,83,73,.06)}
.bank-priority strong{display:block;font-size:28px;color:#075e54;margin:5px 0}.bank-priority small{color:#6d8983}.bank-icon{font-size:34px;background:#d8f2e8;border-radius:16px;padding:12px}

.dashboard-bank-card{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#e7f7f1,#f7fcfa);border:1px solid #b9e5d8;border-radius:20px;padding:18px 22px;margin:0 0 18px;box-shadow:0 8px 24px rgba(0,70,60,.06)}
.dashboard-bank-card>span{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:#d7f2e7;font-size:28px}.dashboard-bank-card small{display:block;color:#4f7770;font-weight:800;letter-spacing:1.2px}.dashboard-bank-card strong{display:block;font-size:25px;color:#064f48;margin:2px 0 4px}.dashboard-bank-card a{color:#087b69;font-weight:800;text-decoration:none}

.status.overdue{color:#b42318;background:#fee4e2;border-color:#fecdca}
.sms-balance{background:#075e54;color:#fff;border-radius:16px;padding:14px 18px;min-width:150px;box-shadow:0 8px 20px rgba(16,73,66,.12)}
.sms-balance span{display:block;font-size:9px;letter-spacing:1.1px;font-weight:900;color:#bfe9e1}.sms-balance strong{display:block;font-size:30px;font-family:Manrope,sans-serif;line-height:1.05}.sms-balance small{color:#c9ebe5;font-size:11px}.sms-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.field-help{font-size:11px;color:#78918b;line-height:1.5}.sms-template-list{display:grid;gap:12px}.sms-template{display:grid;grid-template-columns:150px 1fr auto;gap:10px;align-items:start;border:1px solid #e2eeeb;border-radius:13px;padding:12px}.sms-template b{display:block;font-size:12px;color:#1c4c45}.sms-template small{display:block;color:#91a39f;font-size:9px;margin-top:4px}.sms-template textarea{width:100%;border:1px solid #cfe3de;border-radius:9px;padding:9px;font:inherit;font-size:12px;resize:vertical}.sms-template .btn{width:auto;padding:9px 12px}.sms-history-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.status.pending{background:#fff3d9;color:#8b6413}.status.approved{background:#e5f7ed;color:#17704e}.status.rejected{background:#fff0ef;color:#9a3932}
@media(max-width:760px){.page-heading{align-items:flex-start}.sms-balance{width:100%}.sms-grid,.sms-history-grid{grid-template-columns:1fr}.sms-template{grid-template-columns:1fr}.sms-template .btn{width:100%}}

.app-footer{margin-top:32px;background:#043f39;color:#eaf8f5;border-top:1px solid rgba(255,255,255,.08)}.app-footer-inner{max-width:1200px;margin:0 auto;padding:22px 20px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.app-footer-brand{display:flex;align-items:center;gap:12px}.app-footer-brand img{width:62px;height:62px;object-fit:contain;background:#fff;border-radius:12px;padding:5px}.app-footer-brand strong{display:block;font-size:14px}.app-footer-brand small{display:block;color:#b9d7d1;margin-top:3px}.app-footer-contact{display:flex;gap:18px;flex-wrap:wrap;font-size:13px}.app-footer-contact a{color:#eaf8f5;text-decoration:none}.app-footer-bottom{text-align:center;padding:11px 20px;border-top:1px solid rgba(255,255,255,.08);font-size:12px;color:#b9d7d1}@media(max-width:600px){.app-footer-inner{align-items:flex-start}.app-footer-contact{width:100%;flex-direction:column;gap:6px}}

/* Final cleanup: contextual navigation only; floating WhatsApp support. */
.whatsapp-float{position:fixed;right:18px;bottom:18px;z-index:1200;display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:52px;padding:0 15px;border-radius:999px;background:#25D366;color:#fff;text-decoration:none;font-size:12px;font-weight:900;box-shadow:0 10px 28px rgba(0,0,0,.20);border:3px solid #fff;transition:transform .2s ease,box-shadow .2s ease}.whatsapp-float:hover{transform:translateY(-2px);box-shadow:0 13px 32px rgba(0,0,0,.24)}
.footer-logo-image{width:54px;height:54px;object-fit:contain;background:#fff;border-radius:12px;padding:4px;box-shadow:0 6px 18px rgba(8,123,105,.14)}
@media(max-width:560px){.whatsapp-float{right:14px;bottom:14px;min-width:48px;height:48px;padding:0 12px;font-size:11px}}


.public-notice{padding-top:20px;padding-bottom:30px}
.public-notice-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.public-notice-grid>div:first-child{padding:18px 4px}
.notice-card{border-left:4px solid #0b8f78;background:#f3fbf8;border-radius:14px;padding:24px;box-shadow:0 10px 30px rgba(0,0,0,.05)}
.notice-card strong{font-weight:800;color:#064f46}
.notice-card p{margin:12px 0 0;line-height:1.7}
@media (max-width:760px){.public-notice-grid{grid-template-columns:1fr}.notice-card{padding:20px}}


/* Final public-information section: government transparency and digital services. */
.gov-link{display:inline-flex;align-items:center;justify-content:center;margin-top:18px;padding:12px 16px;border-radius:12px;background:#087b69;color:#fff;text-decoration:none;font-weight:800;line-height:1.35;box-shadow:0 8px 20px rgba(8,123,105,.16)}
.gov-link:hover{background:#075e54;text-decoration:none;transform:translateY(-1px)}
.gov-note{display:block;margin-top:10px;color:#5e7772;font-size:12px;line-height:1.55}
.digital-services{padding-top:20px;padding-bottom:55px}
.digital-services-inner{background:#fff;border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:0 12px 35px rgba(4,78,71,.06)}
.digital-services-inner>div:first-child{max-width:780px}
.digital-services-inner h2{margin:12px 0 8px;font-family:Manrope,sans-serif;font-size:clamp(28px,4vw,42px);line-height:1.1;letter-spacing:-1.2px}
.digital-services-inner p{color:#5f7772;line-height:1.7}
.digital-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}
.digital-service-card{border:1px solid #dcece7;border-radius:18px;padding:22px;background:linear-gradient(180deg,#fbfefd,#f4faf8)}
.digital-service-icon{width:48px;height:48px;border-radius:14px;background:#dff5ed;display:grid;place-items:center;font-size:24px;margin-bottom:12px}
.digital-service-card h3{margin:0 0 7px;color:#075e54;font-size:20px}
.digital-service-card p{margin:0 0 10px;font-size:14px}
.digital-service-card strong{display:block;color:#164e47;font-size:14px}
.digital-service-card small{display:block;margin-top:7px;color:#78918b;font-size:11px}
@media(max-width:760px){.digital-services-inner{padding:24px 20px}.digital-service-grid{grid-template-columns:1fr}.gov-link{width:100%;text-align:center}}

/* V21: homepage three-stage growth carousel */
.hero{background:#075e54;isolation:isolate}
.hero-slides{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-slide{position:absolute;inset:0;background-image:var(--hero-image);background-position:center;background-size:cover;background-repeat:no-repeat;opacity:0;transform:scale(1.03);transition:opacity .8s ease,transform 7s ease}
.hero-slide.is-active{opacity:1;transform:scale(1)}
.hero-overlay{z-index:1;background:linear-gradient(90deg,rgba(2,62,56,.91) 0%,rgba(3,77,69,.72) 45%,rgba(2,61,57,.28) 100%)}
.hero-inner{z-index:2}
.hero-copy{position:relative}
.hero-slide-copy{display:none;animation:heroCopyIn .65s ease both}
.hero-slide-copy.is-active{display:block}
@keyframes heroCopyIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.hero-slide-copy h1{margin-bottom:18px}
.hero-actions .btn.glass{min-width:185px}
.hero-actions .btn.light{min-width:260px}
.hero-dots{display:flex;align-items:center;gap:10px;margin-top:28px}
.hero-dot{width:12px;height:12px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.65);cursor:pointer;box-shadow:0 0 0 1px rgba(255,255,255,.18)}
.hero-dot.is-active{width:14px;height:14px;background:var(--lime);box-shadow:0 0 0 5px rgba(182,237,84,.15)}
.top .login-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 25px;border-radius:13px;background:linear-gradient(135deg,#0a917a,#075e54);color:#fff;text-decoration:none;font-size:15px;font-weight:800;box-shadow:0 8px 20px rgba(8,123,105,.18);border:1px solid rgba(255,255,255,.35);transition:.2s}
.top .login-link::before{content:'🔒';font-size:15px}
.top .login-link:hover{transform:translateY(-1px);box-shadow:0 11px 25px rgba(8,123,105,.24);text-decoration:none}
@media(max-width:560px){
 .top .login-link{padding:9px 13px;border-radius:10px;font-size:12px}
 .top .login-link::before{font-size:12px}
 .brand strong{font-size:13px;max-width:185px}
 .brand small{font-size:9px}
 .hero{min-height:620px}
 .hero-inner{min-height:620px}
 .hero-overlay{background:linear-gradient(90deg,rgba(2,62,56,.93),rgba(3,77,69,.78))}
 .hero-copy{padding-top:25px}
 .hero-actions .btn.light{min-width:0;flex:1}
 .hero-actions .btn.glass{min-width:0;flex:0 0 auto}
 .hero-dots{justify-content:center}
}
@media(prefers-reduced-motion:reduce){.hero-slide,.hero-slide-copy,.ticker-track{transition:none;animation:none}.ticker-track{animation:none}.hero-dot{cursor:default}}

/* V22: clean, clear hero presentation based on the approved reference. */
.hero{min-height:650px;background:#075e54;color:#fff}
.hero-slides{inset:0}
.hero-slide{background-position:center center;background-size:cover;opacity:0;transform:none;transition:opacity .65s ease}
.hero-slide.is-active{opacity:1;transform:none}
.hero-overlay{background:linear-gradient(90deg,rgba(2,62,56,.82) 0%,rgba(2,62,56,.66) 34%,rgba(2,62,56,.28) 64%,rgba(2,62,56,.08) 100%);z-index:1}
.hero-inner{min-height:650px;align-items:center}
.hero-copy{max-width:720px;padding:55px 0 105px}
.hero h1{font-size:clamp(48px,6vw,78px);text-shadow:0 2px 14px rgba(0,0,0,.12)}
.hero-copy>p{max-width:650px}
.hero-dots{position:relative;z-index:4;margin-top:30px}
.hero-dot{background:rgba(255,255,255,.82);box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.hero-dot.is-active{background:var(--lime)}
.hero-features{position:absolute;left:0;right:0;bottom:0;z-index:4;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(2,54,50,.94);border-top:1px solid rgba(255,255,255,.16);min-height:104px;padding:0 max(20px,calc((100% - 1180px)/2 + 24px))}
.hero-features>div{display:flex;align-items:center;gap:12px;padding:18px 22px;border-right:1px solid rgba(255,255,255,.20)}
.hero-features>div:last-child{border-right:0}
.feature-icon{font-size:29px;flex:none;filter:saturate(1.1)}
.hero-features strong{display:block;color:#fff;font-size:15px;line-height:1.2}
.hero-features small{display:block;color:#b9dcd6;font-size:11px;line-height:1.35;margin-top:4px}
@media(max-width:900px){
 .hero{min-height:650px}
 .hero-inner{min-height:650px}
 .hero-copy{padding:45px 0 125px;max-width:680px}
 .hero-overlay{background:linear-gradient(90deg,rgba(2,62,56,.80) 0%,rgba(2,62,56,.54) 45%,rgba(2,62,56,.16) 100%)}
 .hero-features{grid-template-columns:repeat(2,1fr);min-height:112px;padding:0 12px}
 .hero-features>div{padding:12px 14px}
 .hero-features>div:nth-child(2){border-right:0}
 .hero-features>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.15)}
}
@media(max-width:560px){
 .hero{min-height:670px;background-position:58% center}
 .hero-inner{min-height:670px}
 .hero-copy{padding:38px 0 145px}
 .hero-overlay{background:linear-gradient(90deg,rgba(2,62,56,.77) 0%,rgba(2,62,56,.49) 48%,rgba(2,62,56,.16) 100%)}
 .hero h1{font-size:46px;letter-spacing:-2.4px;line-height:1.03}
 .hero-copy>p{font-size:16px;line-height:1.55}
 .hero-points{font-size:11px}
 .hero-dots{margin-top:24px;justify-content:center}
 .hero-features{grid-template-columns:repeat(2,1fr);min-height:126px;padding:0 7px}
 .hero-features>div{gap:7px;padding:11px 8px}
 .feature-icon{font-size:21px}
 .hero-features strong{font-size:11px}
 .hero-features small{font-size:8px;margin-top:2px}
}

/* V22: registration, settings, borrower profiles and secure documents */
.form-section-title{margin:22px 0 10px;padding-top:14px;border-top:1px solid #dcece8;color:#075e54;font-weight:800;font-size:14px;text-transform:uppercase;letter-spacing:.08em}
.auth-links{text-align:right;margin:10px 0 2px}.auth-links a{color:#087b69;font-weight:800;text-decoration:none}.auth-links a:hover{text-decoration:underline}
.settings-card{max-width:900px}.profile-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.detail-grid>div{background:#f5fbf9;border:1px solid #dcece8;border-radius:12px;padding:13px}.detail-grid b{display:block;color:#075e54;font-size:12px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.detail-grid span{color:#243b3a}.witness-row{border:1px solid #dcece8;background:#f9fcfb;border-radius:14px;padding:14px;margin:12px 0}.witness-title{font-weight:800;color:#075e54;margin-bottom:10px}.muted{color:#6d7f7c}.document-row{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid #dcece8;background:#fbfefd;border-radius:12px;padding:13px;margin-bottom:10px}.document-row small{display:block;color:#6d7f7c;margin-top:4px}.document-actions{display:flex;gap:8px;flex-wrap:wrap}.document-actions .btn,.document-row .btn{white-space:nowrap}
@media(max-width:800px){.profile-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.document-row{align-items:flex-start;flex-direction:column}.document-actions{width:100%}.document-actions .btn{flex:1;text-align:center}}

/* V24: definitive image carousel rendering + mandatory registration selector */
.hero{background:#075e54;color:#fff}
.hero-slides{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .65s ease}
.hero-slide.is-active{opacity:1;visibility:visible}
.hero-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.hero-overlay{z-index:1;background:linear-gradient(90deg,rgba(2,62,56,.48) 0%,rgba(2,62,56,.28) 38%,rgba(2,62,56,.08) 72%,rgba(2,62,56,.02) 100%)}
.hero-inner{z-index:2}
.hero-copy{position:relative;z-index:3}
.registration-type-field{margin-bottom:6px}
.registration-type-field label{display:block;font-weight:800;margin-bottom:7px;color:var(--ink)}
.registration-type-field select{width:100%;appearance:auto;background:#fff;border:1px solid #cfe5df;border-radius:12px;padding:13px 14px;font:inherit;color:var(--ink);min-height:48px;outline:none}
.registration-type-field select:focus{border-color:#0a917a;box-shadow:0 0 0 3px rgba(10,145,122,.12)}
.registration-type-field small{display:block;color:#708681;font-size:11px;margin-top:5px}
.required-mark{color:#c43c49}
@media(max-width:900px){
  .hero-overlay{background:linear-gradient(90deg,rgba(2,62,56,.54) 0%,rgba(2,62,56,.32) 48%,rgba(2,62,56,.10) 100%)}
}
@media(max-width:560px){
  .hero-slide img{object-position:63% center}
  .hero-overlay{background:linear-gradient(90deg,rgba(2,62,56,.56) 0%,rgba(2,62,56,.34) 52%,rgba(2,62,56,.10) 100%)}
  .auth-card{padding:22px!important}
}

/* V25: final navigation + PWA install experience */
.page-nav-actions{display:flex;gap:14px;margin:0 0 24px;align-items:center}
.page-nav-actions .btn{min-width:150px;min-height:52px;padding:13px 20px;border-radius:16px;font-size:15px;font-weight:800;box-shadow:0 6px 18px rgba(9,76,68,.06);border:1px solid #d7e7e3;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.page-nav-actions .btn:hover{transform:translateY(-1px);box-shadow:0 9px 22px rgba(9,76,68,.10)}
.page-nav-actions .page-back{background:#fff;color:#075e54}
.page-nav-actions .page-back:hover{background:#f2faf7}
.page-nav-actions .page-cancel{background:#fff7f7;color:#a43b42;border-color:#efd3d5}
.page-nav-actions .page-cancel:hover{background:#fff0f0;border-color:#e8bfc3}
.install-modal{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:20px;background:rgba(3,45,41,.58);backdrop-filter:blur(6px)}
.install-modal[hidden]{display:none}
.install-modal-card{position:relative;width:min(440px,100%);padding:30px 26px 26px;background:#fff;border:1px solid #dcece7;border-radius:26px;box-shadow:0 28px 80px rgba(0,0,0,.25);text-align:center;color:var(--ink)}
.install-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:#eef7f4;color:#35645e;font-size:25px;cursor:pointer}
.install-app-icon{width:84px;height:84px;margin:0 auto 14px;border-radius:22px;display:grid;place-items:center;background:#087b69;box-shadow:0 12px 28px rgba(8,123,105,.20);font-size:43px;animation:installShake 1.15s ease-in-out infinite}
@keyframes installShake{0%,100%{transform:rotate(0) translateY(0)}15%{transform:rotate(-7deg) translateY(-2px)}30%{transform:rotate(7deg) translateY(-3px)}45%{transform:rotate(-5deg)}60%{transform:rotate(4deg)}75%{transform:rotate(0) translateY(0)}}
.install-kicker{font-size:10px;font-weight:900;letter-spacing:1.5px;color:#087b69}
.install-modal-card h2{font-family:Manrope,sans-serif;font-size:31px;letter-spacing:-1px;margin:7px 0 8px}
.install-modal-card p{color:#687f7b;font-size:14px;line-height:1.65;margin:0 auto 20px;max-width:360px}
.install-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.install-actions .btn{min-width:150px;min-height:48px;border-radius:13px}
.install-help{display:block;margin-top:14px;color:#6d817d;font-size:11px;line-height:1.5}
@media(max-width:560px){
 .page-nav-actions{gap:10px;margin-bottom:18px}
 .page-nav-actions .btn{flex:1;min-width:0;min-height:48px;padding:11px 13px;border-radius:14px;font-size:14px}
 .install-modal{padding:14px}
 .install-modal-card{padding:28px 20px 22px;border-radius:23px}
 .install-modal-card h2{font-size:27px}
}
@media(prefers-reduced-motion:reduce){.install-app-icon{animation:none}}
