:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#19352f;background:#fff0f4;line-height:1.6;font-synthesis:none;--green: #176b5b;--dark: #163b34;--cream: #1b34;--mint: #e7f3ed;--blush: #fcecef;--pink: #f6c8d2;--line: #ead9de;--muted: #64736e;--shadow: 0 16px 45px rgba(24, 58, 49, .08)}*{box-sizing:border-box}body{margin:0;background:var(--cream)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.nav-links a,.nav-links button{display:inline-flex;align-items:center;gap:7px}.nav-links .button{color:#fff}.nav-links .button-secondary{color:var(--dark)}.nav-links .button-secondary:hover{background:var(--mint)}.card-icon svg{flex-shrink:0}.error-box[role=alert]{animation:error-in .16s ease-out}@keyframes error-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.success-message{min-height:24px}.toast{position:fixed;top:92px;right:24px;z-index:1000;display:flex;flex-direction:column;gap:2px;min-width:300px;max-width:420px;padding:16px 18px;border-radius:12px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);animation:toast-in .18s ease-out}.toast strong{color:var(--dark)}.toast span{color:var(--muted);font-size:.95rem}.toast-success{border-left:4px solid var(--green)}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.toast{left:16px;right:16px;top:86px;min-width:0}}.detail-main .lead{display:flex;align-items:center;gap:7px}@media(max-width:850px){.nav-links a,.nav-links button{justify-content:flex-start}.nav-links .button{width:100%}}.navbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);background:#fffffff5;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--dark)}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--mint);color:var(--green)}.nav-links{display:flex;align-items:center;gap:25px;font-size:.94rem}.nav-links a:not(.button){color:#52635e}.nav-links a.active{color:var(--dark);font-weight:700}.mobile-menu{display:none;border:0;background:none}.hero{max-width:1200px;margin:auto;padding:90px 5%;display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.hero h1{font-size:clamp(2.8rem,6vw,5.2rem);line-height:1.02;letter-spacing:-.055em;margin:18px 0 24px;max-width:800px}.hero-copy>p{font-size:1.2rem;color:var(--muted);max-width:670px}.pill{display:inline-flex;gap:7px;align-items:center;background:var(--mint);color:var(--green);padding:7px 12px;border-radius:99px;font-size:.85rem;font-weight:700}.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.hero-card{background:var(--blush);border:1px solid #f5d8df;border-radius:30px;padding:42px;box-shadow:var(--shadow)}.hero-card h3{font-size:1.8rem;line-height:1.15}.hero-orb{width:100px;height:100px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--green)}.mini-stat{display:flex;gap:10px;align-items:center;margin-top:16px;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:12px 18px;background:var(--green);color:#fff;font-weight:750;box-shadow:0 7px 20px #176b5b2e}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.6;cursor:not-allowed;transform:none}.button-secondary{background:#fff;color:var(--dark);border:1px solid var(--line);box-shadow:none}.button-dark{background:var(--dark)}.button-small{padding:9px 14px}.button-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:9px 14px;background:var(--green);color:#fff;font-weight:750;box-shadow:0 7px 20px #176b5b24}.button-link:hover{transform:translateY(-1px)}.button-link-secondary{background:#fff;color:var(--dark);border:1px solid var(--line);box-shadow:none}.full-width{width:100%}.section{max-width:1200px;margin:auto;padding:65px 5%}.page-section{padding-top:60px;padding-bottom:60px}.page-section,.opportunity-form-section{scroll-margin-top:100px}.narrow{max-width:760px;margin-left:auto;margin-right:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.section h2{font-size:2rem;line-height:1.15;margin:7px 0}.page-header{max-width:750px;margin-bottom:35px}.page-header h1,.page-section>h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1.05;letter-spacing:-.04em;margin:8px 0 16px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:var(--green);margin:0}.muted,.page-header>p,.lead{color:var(--muted)}.lead{font-size:1.1rem}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 10px 30px #183a310d}.opportunity-card{position:relative}.card-icon{width:40px;height:40px;display:grid;place-items:center;background:var(--mint);color:var(--green);border-radius:12px;margin-bottom:18px}.match-badge{position:absolute;right:20px;top:20px;color:var(--green);background:var(--mint);border-radius:99px;padding:5px 9px;font-size:.72rem;font-weight:800}.opportunity-card h3{margin:4px 0;font-size:1.35rem}.meta-row{display:flex;align-items:center;gap:7px;margin-top:10px;color:#53645f;font-size:.9rem}.card-description{color:#52635e;font-size:.92rem}.text-link{display:inline-flex;align-items:center;gap:7px;color:var(--green);font-weight:800;margin-top:10px}.opportunity-swipe{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.callout{background:var(--mint);border-radius:28px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin:0 auto 60px;width:calc(100% - 48px);max-width:1200px}.safeguarding-section{margin-top:70px;padding-top:10px}.safeguarding-section .callout{padding:28px 24px}.safeguarding-copy{max-width:760px}.safeguarding-copy h2{margin:8px 0 12px}.safeguarding-copy p:last-child{margin-bottom:0;color:var(--muted)}.filters{margin-bottom:30px}.filters input,input,textarea,select{width:100%;border:1px solid #ccd9d3;border-radius:11px;padding:12px 14px;background:#fff;color:var(--dark);outline:none}select{font:inherit}input:focus,textarea:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px #176b5b1a}.auth-page{min-height:70vh;display:grid;place-items:center;padding:50px 20px}.auth-card,.form-card{width:min(100%,520px);background:#fff;border:1px solid var(--line);border-radius:22px;padding:32px;box-shadow:var(--shadow)}.form-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:0 8px 30px #183a310f}.auth-card h1{font-size:2.3rem;margin:6px 0 24px}.auth-card label,.form-card label{display:flex;flex-direction:column;gap:8px;font-weight:700;font-size:.9rem;margin-bottom:20px}.auth-card input,.form-card input,.form-card textarea,.form-card select{width:100%}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-footer{text-align:center;color:var(--muted)}.form-footer a{color:var(--green);font-weight:700}.error-box{padding:11px 13px;background:#fff0ee;color:#8d3026;border-radius:10px;margin-bottom:16px}.success-message{display:flex;align-items:center;gap:8px;color:var(--green);font-weight:700;margin-top:14px}.loading{padding:60px;text-align:center;color:var(--muted)}.empty-state{grid-column:1 / -1;padding:40px;background:#fff;border:1px dashed var(--line);border-radius:18px;text-align:center;color:var(--muted)}.detail-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:32px;margin-top:32px}.detail-main{background:#fff;border:1px solid var(--line);border-radius:22px;padding:35px}.detail-main h1{font-size:clamp(2.4rem,5vw,4.2rem);line-height:1.05;letter-spacing:-.04em;margin:16px 0 8px}.detail-main h2{margin-top:38px}.detail-meta{display:flex;gap:24px;flex-wrap:wrap;margin:24px 0 40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.detail-meta span{display:flex;align-items:center;gap:7px;color:var(--muted)}.detail-sidebar{align-self:start;position:sticky;top:24px}.match-score{font-size:2.5rem;font-weight:700;color:var(--green);line-height:1;margin-bottom:8px}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px}.tag{display:inline-flex;padding:7px 12px;border-radius:999px;background:#edf4f1;color:var(--green);font-size:.9rem;font-weight:700}.organisation-landing{padding-bottom:20px}.organisation-landing-hero{padding-bottom:70px}.organisation-landing-callout{margin-left:auto;margin-right:auto}.organisation-landing-callout>div:first-child{max-width:720px}.organisation-landing-callout h2{margin:8px 0 12px}.organisation-landing-callout p:last-child{margin-bottom:0;color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.big-number{font-size:3rem;font-weight:850;color:var(--green);margin:15px 0}.organisation-dashboard{padding-bottom:40px}.organisation-hero{max-width:1200px;margin:0 auto;padding:75px 5% 55px}.organisation-hero-copy{max-width:780px}.organisation-hero h1{font-size:clamp(2.6rem,5vw,4.6rem);line-height:1.04;letter-spacing:-.05em;margin:12px 0 18px}.organisation-hero-copy>p:last-child{max-width:680px;color:var(--muted);font-size:1.15rem;margin:0}.organisation-content{padding-top:25px}.organisation-summary{margin-bottom:50px}.organisation-summary{padding:30px}.organisation-summary-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.organisation-summary-header h3{margin:6px 0 0;font-size:1.6rem}.organisation-description{max-width:720px;margin:0 0 24px;font-size:1.05rem;line-height:1.7;color:#42534e}.organisation-detail{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line);color:#52635e;margin-top:24px}.organisation-detail-label{min-width:80px;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.organisation-detail .text-link{margin-top:0}.organisation-summary .error-box{margin-top:24px;margin-bottom:0}.organisation-status{display:block;align-items:center;gap:7px;margin-top:16px;margin-bottom:24px;padding:15px;border-radius:30px;background:var(--mint);color:var(--green);font-size:.85rem;font-weight:800}.organisation-status-title{display:block;margin-bottom:.35rem}.organisation-status-description{display:block}.organisation-status-description p{margin:0}.organisation-back-button{margin-top:12px}.organisation-opportunities-heading{margin-top:50px}.organisation-link{display:inline-flex;align-items:center;gap:6px;text-decoration:none}.organisation-link:hover{text-decoration:underline}.card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:16px}.organisation-detail-link{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:18px;margin-bottom:24px}.organisation-name{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:1.1rem;font-weight:600}.organisation-detail-link .button-link{margin-top:0}.opportunity-form-section{width:min(100%,1000px);margin:50px auto 0;padding-left:0;padding-right:0;scroll-margin-top:100px}.opportunity-form-section .form-card{width:100%;margin-left:auto;margin-right:auto}.footer{border-top:1px solid var(--line);padding:35px 5%;display:flex;justify-content:space-between;color:var(--muted);background:#fff}.footer p{margin:3px 0}.footer-links{display:flex;gap:20px}@media(max-width:1000px){.callout{width:calc(100% - 40px)}}@media(max-width:850px){.hero,.detail-layout{grid-template-columns:1fr}.hero{padding-top:55px}.card-grid,.dashboard-grid{grid-template-columns:1fr 1fr}.organisation-hero{padding-top:50px;padding-bottom:35px}.organisation-hero h1{font-size:clamp(2.4rem,9vw,3.5rem)}.organisation-content{padding-top:15px}.nav-links{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:20px 5%;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.nav-links.open{display:flex}.mobile-menu{display:block}.detail-sidebar{position:static}}@media(max-width:800px){.callout{width:calc(100% - 28px)}.detail-layout{grid-template-columns:1fr}.detail-sidebar{position:static}}@media(max-width:580px){.section{padding-left:4%;padding-right:4%}.card-grid,.dashboard-grid,.two-col{grid-template-columns:1fr}.hero{padding-bottom:32px}.hero-card{padding:28px}.callout{padding:28px 24px}.callout,.footer{flex-direction:column;align-items:flex-start}.navbar{padding:0 4%}.organisation-hero,.organisation-content{padding-left:4%;padding-right:4%}.organisation-summary-header{flex-direction:column;align-items:flex-start}.opportunity-swipe{display:flex;overflow-x:auto;gap:16px;padding-bottom:12px;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none}.opportunity-swipe::-webkit-scrollbar{display:none}.opportunity-swipe .opportunity-card{flex:0 0 88%;scroll-snap-align:center}.safeguarding-section .callout{padding:28px 24px}.section-heading{flex-direction:column;align-items:flex-start;gap:8px}.section-heading .text-link{margin-top:4px}}
