/* 3.0.8: the canvas fonts, served from this site (SIL Open Font License; see THIRD-PARTY-NOTICES.md) */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600 700;font-display:swap;src:url(../fonts/fraunces-latin.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:600;font-display:swap;src:url(../fonts/fraunces-italic-latin.woff2) format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/source-sans-3-latin.woff2) format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/source-sans-3-italic-latin.woff2) format('woff2')}
:root{--navy:#0B1E36;--green:#185A37;--green-deep:#123D2A;--gold:#E0A838;--warm:#FAF8F5;--surface:#fff;--border:#D8D2C7;--alert:#99510D;--muted:#626B68;--tint:#EEF3ED;--gold-tint:#FBF2DF;--shadow:0 10px 35px #0b1e3607;--radius:14px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--navy);background:var(--warm);font-synthesis:none;font-size:16px;line-height:1.55}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--green);text-underline-offset:3px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1.17;letter-spacing:-.035em}h1{font-size:46px;font-size:clamp(2.05rem,3.5vw,3.3rem);font-weight:650;margin-bottom:18px}h2{font-size:1.55rem;font-weight:650}h3{font-size:1.15rem;font-weight:650}p{margin-bottom:1em}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}button,input,textarea,select{border-radius:8px}input,select,textarea{color:var(--navy);min-height:50px;min-width:0;width:100%;border:1px solid var(--border);background:#fff;padding:12px 14px;font-size:16px}textarea{resize:vertical;line-height:1.65;min-height:150px}input::placeholder,textarea::placeholder{color:#7A807A;opacity:1}input:focus,textarea:focus,select:focus{border-color:var(--green)}input[type=checkbox],input[type=radio]{width:21px;min-height:21px;height:21px;flex:0 0 21px;margin:0;accent-color:var(--green)}[hidden]{display:none!important}.skip-link{position:fixed;top:-90px;left:16px;padding:12px 18px;background:var(--navy);color:white;z-index:100}.skip-link:focus{top:8px}
.masthead{height:94px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 34px;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--green-deep)}.brand-mark{font-size:38px;font-family:Georgia,serif;font-weight:700;line-height:1;border:1px solid var(--green);border-radius:11px;width:50px;height:54px;display:flex;align-items:center;justify-content:center}.brand-mark span{color:var(--gold)}.brand strong{font-size:21px;letter-spacing:-.035em}.brand-light{font-weight:400}.brand small{display:block;font-size:9px;letter-spacing:.16em;font-weight:600;margin-top:4px}.masthead-tools{display:flex;align-items:center;gap:24px}.save-status{font-size:13px;color:var(--muted)}.save-status:before{content:'✓';color:var(--green);margin-right:7px}.save-status.unsaved:before{content:'!';color:var(--alert)}.workbook-shell{display:grid;grid-template-columns:254px 1fr;min-height:calc(100vh - 94px)}.sidebar{padding:32px 22px 110px;background:#fff;border-right:1px solid var(--border);position:sticky;top:94px;height:calc(100vh - 94px);overflow:auto;scrollbar-width:thin}.sidebar-title{font-size:10px;letter-spacing:.13em;font-weight:700;color:var(--muted);margin-bottom:16px}.progress-label{display:flex;align-items:center;gap:10px;justify-content:space-between;font-size:12px}.progress-label strong{font-weight:500}.progress-track{height:4px;border-radius:4px;background:#ecece5;margin:12px 0 26px;overflow:hidden}.progress-track>span{display:block;background:var(--gold);height:100%;transition:width .3s}.nav-group{font-size:10px;letter-spacing:.11em;color:#787D77;font-weight:600;margin:22px 12px 10px}.step-button{width:100%;display:flex;align-items:center;gap:12px;background:none;border:0;text-align:left;color:var(--muted);padding:9px 10px;min-height:49px;border-radius:7px;margin:2px 0}.step-button.active{background:var(--green);color:#fff}.step-button:not(.active):hover{background:var(--tint);color:var(--green)}.step-index{font-size:11px;min-width:26px;height:26px;border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center}.step-button.active .step-index{border-color:#ffffff66;color:var(--gold)}.step-button.complete:not(.active) .step-index{border-color:transparent;background:var(--tint);color:var(--green)}.step-name{font-size:14px;font-weight:500}.sidebar-note{margin:26px 10px;padding-top:22px;border-top:1px solid var(--border)}.mini-label{font-size:10px;letter-spacing:.12em;font-weight:700}.sidebar-note .mini-label{color:var(--green)}.sidebar-note p{font-size:15px;margin:10px 0;color:var(--green-deep);line-height:1.55}.partners{margin:30px 10px 0}.partners strong{font-family:Georgia,serif;font-size:22px;display:block;letter-spacing:.12em}.partners span{font-size:10px;display:block;color:var(--muted)}.partners hr{width:30px;margin:16px 0;border:0;border-top:1px solid var(--border)}.partners .logo-quintessence{display:block;width:150px;max-width:100%;height:auto;margin:6px 0 8px}.footer-logo{height:20px;width:auto;vertical-align:middle;margin:0 3px}.workspace{min-width:0;padding:0 42px 120px}.pathway-ribbon{height:58px;display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--border);font-size:12px;max-width:1180px;margin:auto;color:var(--muted)}.ribbon-label{font-size:10px;letter-spacing:.13em;font-weight:700;margin-right:auto;color:var(--green)}.pathway-ribbon b{font-weight:500;margin-left:6px}.pathway-ribbon i{font-style:normal;color:var(--border)}.pathway-ribbon .selected{color:var(--green);font-weight:700}.pathway-ribbon .selected b{font-weight:700}main{max-width:1180px;margin:auto;padding:36px 0 16px;outline:none}.eyebrow{font-size:11px;letter-spacing:.13em;font-weight:700;color:var(--green);display:flex;align-items:center;gap:10px;margin-bottom:18px}.eyebrow .line{width:25px;height:2px;background:var(--gold)}.step-counter{margin-left:auto;color:var(--muted);font-weight:400;letter-spacing:.06em}.intro{max-width:680px;font-size:17px;color:var(--muted);line-height:1.65;margin-bottom:28px}.lead-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:30px;align-items:stretch;margin-bottom:24px}.welcome-title{font-size:52px;font-size:clamp(2.2rem,3.7vw,3.9rem);margin:12px 0 18px}.welcome-title em{font-style:normal;color:var(--green)}.programme-name{color:var(--green);font-size:12px;letter-spacing:.06em;font-weight:650}.welcome-copy{padding:16px 0 0}.welcome-copy p{max-width:540px;color:var(--muted);font-size:17px}.welcome-copy .tagline{font-weight:650;color:var(--green-deep);font-size:17px;margin-bottom:12px}.welcome-image{border-radius:var(--radius);width:100%;height:100%;min-height:240px;max-height:290px;object-fit:cover;background:var(--green)}.photo-panel{position:relative;margin:0;min-width:0}.photo-panel figcaption{position:absolute;bottom:16px;left:20px;right:20px;color:#fff;font-size:10px;letter-spacing:.14em;font-weight:600}.photo-panel:after{content:'';position:absolute;inset:60% 0 0;border-radius:0 0 var(--radius) var(--radius);background:linear-gradient(transparent,#06241880);pointer-events:none}.photo-panel figcaption{z-index:1}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}.card+.card{margin-top:20px}.card h2{margin-bottom:12px}.mindset{display:grid;grid-template-columns:1.05fr 1.25fr;gap:0;padding:0;overflow:hidden;margin:24px 0}.mindset-intro{padding:26px;background:var(--green-deep);color:white}.mindset-intro .mini-label{color:var(--gold)}.mindset-intro h2{font-size:1.65rem;margin:13px 0 12px}.mindset-intro p{font-size:15px;color:#d6e4dc;line-height:1.65;margin:0}.mindset-example{padding:25px 28px}.bad-example{font-size:14px;color:var(--muted);padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:14px}.good-example{font-size:18px;font-weight:550;line-height:1.55;margin:0;color:var(--green-deep)}.text-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-bottom:5px}.good-example .text-label{color:var(--green)}.welcome-benefits{display:grid;grid-template-columns:repeat(3,1fr);margin:20px 0 26px;border-bottom:1px solid var(--border);padding-bottom:24px;gap:24px}.benefit{display:flex;gap:12px;font-size:14px}.benefit strong{display:block;font-weight:600;margin-bottom:4px}.benefit p{font-size:13px;color:var(--muted);line-height:1.45;margin:0}.icon{width:23px;height:23px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:0 0 23px}.benefit .icon{color:var(--green);margin-top:2px}.scope-box{padding:18px 22px;background:var(--gold-tint);border:1px solid #e5ca8e;border-radius:10px}.scope-box p{font-size:14px;margin-bottom:8px;color:#574729}.check-label{display:flex;gap:12px;align-items:flex-start;min-height:44px;padding:10px 0;cursor:pointer;font-size:15px}.check-label input{margin-top:3px}.check-label>span{flex:1}.check-label strong{font-weight:600}.small-note{font-size:13px;color:var(--muted);line-height:1.55;margin:12px 0 0}.workspace-footer{max-width:1180px;margin:30px auto 0;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted);border-top:1px solid var(--border);padding-top:20px}.workspace-footer span:first-child{color:var(--green);font-weight:600}.bottom-nav{position:fixed;bottom:0;left:254px;right:0;border-top:1px solid var(--border);background:#fffffffa;backdrop-filter:blur(12px);z-index:25;padding:16px 42px max(16px,env(safe-area-inset-bottom))}.bottom-inner{max-width:1180px;margin:auto;display:flex;align-items:center;gap:22px}.bottom-actions{margin-left:auto;display:flex;gap:14px;align-items:center}.bottom-progress{font-size:12px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:12px 20px;font-size:14px;font-weight:600;border:1px solid transparent;text-decoration:none;line-height:1.3;transition:background .18s,transform .18s}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{background:var(--green);color:#fff;border-color:var(--green)}.button-primary:hover:not(:disabled){background:var(--green-deep)}.button-gold{background:var(--gold);color:var(--navy)}.button-gold:hover{background:#eab645}.button-outline{background:white;color:var(--navy);border-color:var(--border)}.button-outline:hover{background:var(--warm);border-color:var(--green)}.button-quiet{background:transparent;color:var(--green)}.button-quiet:hover{background:var(--tint)}.icon-button{width:48px;height:48px;min-width:48px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:#fff;font-size:23px;color:var(--navy)}.button-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:20px}.button-row.end{justify-content:flex-end}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.field{display:block;min-width:0}.field.full{grid-column:1/-1}.field-label{display:flex;justify-content:space-between;gap:10px;font-size:14px;font-weight:600;margin-bottom:8px}.field-hint{display:block;color:var(--muted);font-size:13px;line-height:1.5;margin-top:6px}.required{color:var(--green);font-size:12px;font-weight:400}.field-section{border:0;padding:0;margin:0 0 28px}.field-section legend{font-size:1.1rem;font-weight:600;margin-bottom:18px;width:100%;padding-bottom:10px;border-bottom:1px solid var(--border)}.selection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.pill{display:inline-flex;align-items:center;gap:6px;background:var(--tint);color:var(--green);padding:5px 10px;font-size:11px;border-radius:5px;font-weight:600}.pill.gold{background:var(--gold-tint);color:#735319}.note{border-left:3px solid var(--gold);padding:5px 0 5px 18px;font-size:14px;color:var(--muted);margin:20px 0}.note strong{color:var(--navy)}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}.section-head h2,.section-head h3{margin:0}.two-column{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:24px;align-items:start}.aside-card{background:var(--tint);border:1px solid #d0ded0;border-radius:var(--radius);padding:24px;font-size:14px;color:var(--green-deep)}.aside-card h3{font-size:20px;margin:14px 0}.aside-card ul{margin:10px 0;padding-left:18px}.aside-card li{margin:10px 0}.stage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.stage-card{position:relative;display:flex;flex-direction:column;background:white;border:1px solid var(--border);border-radius:var(--radius);padding:24px;cursor:pointer;transition:border-color .15s,background .15s}.stage-card:has(input:checked){background:var(--green-deep);color:white;border-color:var(--green-deep)}.stage-card:has(input:checked) p,.stage-card:has(input:checked) small{color:#dbe5dd}.stage-card input{position:absolute;top:20px;right:20px}.stage-card .icon{width:34px;height:34px;margin:4px 0 24px;stroke:var(--green)}.stage-card:has(input:checked) .icon{stroke:var(--gold)}.stage-card h3{margin-bottom:8px;font-size:22px}.stage-card .stage-subtitle{font-size:11px;letter-spacing:.06em;font-weight:600}.stage-card p{font-size:15px;margin:16px 0;color:var(--muted)}.stage-card small{font-size:12px;margin-top:auto;color:var(--muted)}.theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.theme-card{background:white;border:1px solid var(--border);border-radius:12px;overflow:hidden}.theme-card.selected{border:2px solid var(--green)}.theme-heading{display:flex;padding:22px;gap:14px;cursor:pointer;align-items:flex-start;min-height:128px}.theme-heading .icon{color:var(--green);margin-top:2px}.theme-heading h3{font-size:17px;margin-bottom:8px}.theme-heading p{font-size:14px;line-height:1.5;color:var(--muted);margin:0}.theme-heading input{margin-left:auto}.theme-body{padding:0 22px 22px}.theme-body .check-label{font-size:14px}.theme-body>strong{font-size:12px;color:var(--green)}.theme-advice{font-size:13px;border-top:1px solid var(--border);padding-top:12px;margin-top:14px}.theme-advice p{margin:0 0 8px}.theme-rule{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px;border:1px solid #dcc080;background:var(--gold-tint);border-radius:8px;font-size:14px;margin-bottom:22px}.canvas-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:22px;align-items:start}.canvas-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;border-bottom:1px solid var(--border);padding-bottom:18px;margin-bottom:24px}.canvas-tab{display:flex;align-items:center;flex-direction:column;gap:7px;background:none;border:0;padding:7px 3px;color:var(--muted);min-height:67px;font-size:11px;font-weight:500}.canvas-tab span{display:flex;align-items:center;justify-content:center;width:27px;height:27px;border:1px solid var(--border);border-radius:50%;font-size:11px}.canvas-tab.active{color:var(--green);font-weight:700}.canvas-tab.active span{color:var(--navy);background:var(--gold);border-color:var(--gold)}.box-title{display:flex;align-items:center;gap:12px;margin-bottom:12px}.box-number{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;background:var(--gold-tint);color:var(--green);border-radius:7px;font-size:13px;font-weight:700}.box-title h2{margin:0;font-size:22px}.plain-prompt{font-size:17px;color:var(--green);margin:0 0 18px}.count{display:block;text-align:right;font-size:12px;color:var(--muted);margin:6px 0 0}.live-preview{position:sticky;top:120px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:20px}.live-preview h3{font-size:15px;margin:5px 0 15px}.mini-canvas{display:grid;grid-template-columns:1fr 1fr;gap:6px}.mini-box{border:1px solid var(--border);border-radius:5px;min-height:83px;padding:9px;font-size:10px;line-height:1.4;overflow-wrap:anywhere;color:var(--muted)}.mini-box strong{display:block;color:var(--navy);font-size:10px;margin-bottom:5px}.mini-box.filled{background:var(--tint);border-color:#c7dacb}.mini-box.current{border-color:var(--gold)}.preview-budget{border-top:1px solid var(--border);padding-top:14px;margin-top:18px}.preview-budget small{display:block;font-size:11px;color:var(--muted)}.preview-budget strong{font-size:24px;font-weight:650;color:var(--green)}.budget-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:14px}.budget-table th{text-align:left;padding:9px 6px;font-size:11px;letter-spacing:.02em;color:var(--muted);font-weight:600;border-bottom:1px solid var(--border)}.budget-table td{padding:7px 5px;vertical-align:top;border-bottom:1px solid #eae6dd}.budget-table th:nth-child(1){width:43%}.budget-table th:nth-child(2){width:25%}.budget-table th:nth-child(3){width:24%}.budget-table th:nth-child(4){width:8%}.budget-table input,.budget-table select{padding:10px 8px;min-height:48px;font-size:16px}.budget-table .icon-button{width:36px;min-width:36px;border:0;color:var(--muted)}.budget-total{display:flex;justify-content:space-between;gap:20px;margin-top:20px;padding-top:20px;border-top:2px solid var(--green);font-size:14px;align-items:center}.budget-total strong{font-size:25px;color:var(--green)}.issue-box{padding:16px 20px;background:var(--gold-tint);border:1px solid #d9bb77;border-radius:9px;color:#624413;font-size:14px;margin:18px 0}.issue-box strong{display:block;margin-bottom:5px}.issue-box ul{margin:4px 0;padding-left:20px}.issue-box li{margin:5px 0}.good-note{font-size:14px;color:var(--green);padding:15px 0}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--border);margin:20px 0 24px;padding-bottom:12px}.tab-button{min-height:48px;padding:12px 19px;font-size:14px;border:1px solid var(--border);background:#fff;color:var(--navy);border-radius:8px}.tab-button[aria-selected=true]{border-color:var(--green);background:var(--green);color:#fff}.scenario-heading{display:flex;gap:20px;align-items:flex-start;justify-content:space-between}.scenario-heading h2{font-size:28px;max-width:470px;margin:15px 0}.scenario-amount{color:var(--green);font-size:28px;font-weight:650;white-space:nowrap}.scenario-story{max-width:800px;color:var(--muted);line-height:1.7}.reframe-switch{display:inline-flex;gap:4px;background:#efeee8;padding:5px;border-radius:8px;margin:18px 0}.reframe-switch button{min-height:44px;border:0;border-radius:6px;padding:10px 20px;background:transparent;color:var(--muted);font-size:14px}.reframe-switch button[aria-pressed=true]{background:white;color:var(--green);box-shadow:0 2px 5px #0000000c}.quote{font-size:23px;line-height:1.5;font-weight:500;color:var(--green-deep);border-left:4px solid var(--gold);padding:6px 0 6px 24px;margin:15px 0 20px}.quote.bad{font-size:21px;color:var(--muted);border-color:var(--border)}.scenario-canvas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.scenario-cell{padding:20px;border:1px solid var(--border);border-radius:8px;font-size:14px}.scenario-cell h3{font-size:15px}.reference-table{width:100%;border-collapse:collapse;font-size:14px}.reference-table th,.reference-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--border)}.reference-table th{font-size:12px;background:var(--tint)}.reference-table td:last-child,.reference-table th:last-child{text-align:right;white-space:nowrap}.reference-table tfoot{font-weight:700;color:var(--green)}details{border:1px solid var(--border);background:#fff;border-radius:10px;margin-top:14px}summary{min-height:52px;cursor:pointer;font-size:15px;font-weight:600;padding:16px 20px}details[open] summary{border-bottom:1px solid var(--border)}.detail-body{padding:20px}.question-number{font-size:12px;color:var(--green);margin-right:12px}.interview-progress{font-size:15px;color:var(--green)}.claim-word{display:inline-block;padding:4px 9px;background:var(--gold-tint);border:1px solid #dcc58d;border-radius:5px;color:#765019;font-size:13px;font-weight:600;margin:3px}.claim-result p{font-size:14px}.claim-examples{display:grid;grid-template-columns:1fr 1fr;gap:18px}.claim-example{padding:20px;border:1px solid var(--border);border-radius:10px;font-size:15px}.claim-example.good{background:var(--tint);border-color:#cfddcd}.claim-example .mini-label{display:block;margin-bottom:12px}.export-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.export-card{padding:30px;border:1px solid var(--border);background:white;border-radius:14px;display:flex;flex-direction:column;align-items:flex-start}.export-card.primary{background:var(--green-deep);color:white;border-color:var(--green-deep)}.export-card .icon{width:40px;height:40px;color:var(--green);margin-bottom:30px}.export-card.primary .icon{color:var(--gold)}.export-card h2{font-size:26px;max-width:330px;margin-bottom:15px}.export-card p{font-size:15px;color:var(--muted);margin-bottom:26px}.export-card.primary p{color:#d6e4dc}.export-card .button{margin-top:auto;width:100%}.export-card .small-note{margin-top:12px;margin-bottom:0;font-size:12px}.export-metadata{display:flex;gap:18px;font-size:11px;font-weight:600;margin:0 0 22px;letter-spacing:.04em}.export-card .button-quiet{color:inherit}.export-status{padding:20px 24px;border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px;background:white}.export-status strong{font-size:17px}.export-status p{font-size:14px;color:var(--muted);margin:5px 0 0}.share-box{padding:20px;border:1px solid var(--border);border-radius:8px;background:var(--warm);white-space:pre-wrap;font-size:14px;line-height:1.65;overflow-wrap:anywhere}.backup-row{display:flex;gap:12px;flex-wrap:wrap}.file-label{position:relative;cursor:pointer}.file-label input{position:absolute;width:1px;height:1px;min-height:1px;opacity:0;overflow:hidden;padding:0}.file-label:focus-within{outline:3px solid var(--gold);outline-offset:3px}.danger-link{color:#833322;background:none;border:0;padding:12px 4px;min-height:48px;font-size:13px;text-decoration:underline}.mobile-step{display:none}.toast{position:fixed;left:50%;bottom:105px;transform:translateX(-50%);z-index:100;background:var(--navy);color:white;padding:14px 23px;border-radius:9px;max-width:min(550px,90vw);font-size:14px;box-shadow:0 8px 30px #0003}.guide-dialog{width:min(760px,94vw);max-height:88vh;border:1px solid var(--border);border-radius:14px;padding:28px;color:var(--navy)}.guide-dialog::backdrop{background:#0b1e3677;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border);padding-bottom:20px;margin-bottom:24px}.dialog-head h2{margin:0}.agenda{width:100%;border-collapse:collapse;font-size:14px}.agenda td{padding:9px 8px;vertical-align:top;border-bottom:1px solid var(--border)}.agenda td:first-child{white-space:nowrap;color:var(--green);font-size:12px}.objectives{display:grid;grid-template-columns:1fr 1fr;gap:5px 22px;padding-left:20px;font-size:14px}.objectives li{padding:5px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.busy-overlay{position:fixed;inset:0;background:#0b1e3680;display:flex;align-items:center;justify-content:center;z-index:200}.busy-overlay>div{background:#fff;border-radius:12px;padding:35px;max-width:400px;color:var(--navy);text-align:center}.spinner{width:27px;height:27px;border:3px solid var(--border);border-top-color:var(--green);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 18px}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.workspace{padding-left:64px;padding-right:64px}main{padding-top:42px}.intro{font-size:18px}.welcome-title{font-size:62px}.welcome-copy p{font-size:18px}.welcome-image{max-height:335px}}
@media(max-width:1150px){.workspace{padding-left:26px;padding-right:26px}.masthead{padding:0 24px}.workbook-shell{grid-template-columns:224px 1fr}.sidebar{padding-left:15px;padding-right:15px}.bottom-nav{left:224px;padding-left:26px;padding-right:26px}.canvas-layout{grid-template-columns:minmax(0,1fr)}.live-preview{position:static}.live-preview .mini-canvas{grid-template-columns:repeat(6,1fr)}.preview-budget{display:flex;justify-content:space-between;align-items:center}.two-column{grid-template-columns:1fr}.stage-card{padding:19px}.stage-card h3{font-size:19px}.lead-grid{gap:24px;grid-template-columns:1.1fr 1fr}.welcome-title{font-size:40px}.masthead-tools{gap:12px}.save-status{font-size:12px}.welcome-benefits{gap:15px}.benefit{gap:8px}.mindset-intro h2{font-size:24px}.brand strong{font-size:19px}.workspace-footer{font-size:10px}}
@media(max-width:850px){.masthead{height:80px;padding:0 18px;gap:10px}.brand-mark{width:42px;height:46px;font-size:32px}.brand{gap:10px}.brand strong{font-size:18px}.brand small{font-size:8px}.masthead-tools .button{padding:10px;font-size:12px}.save-status{display:none}.workbook-shell{display:block}.sidebar{display:none;position:fixed;top:80px;bottom:82px;left:0;width:280px;z-index:35;height:auto;box-shadow:12px 12px 30px #0b1e3626;padding-bottom:20px}.sidebar.mobile-open{display:block}.sidebar-note,.partners{display:none}.workspace{padding:0 22px 100px}.mobile-step{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;border-bottom:1px solid var(--border)}.mobile-step .button{padding-left:0}.pathway-ribbon{height:48px;gap:12px;font-size:11px}.ribbon-label{font-size:9px}.pathway-ribbon b{margin-left:3px}.bottom-nav{left:0;padding:13px 22px}.bottom-inner{gap:15px}.bottom-progress{display:none}main{padding-top:26px}.welcome-image{max-height:270px}.welcome-copy{padding:0}.welcome-title{font-size:39px}.welcome-copy p{font-size:15px}.card{padding:22px}.theme-heading{padding:20px}.bottom-actions .button-quiet{padding:12px 8px}.bottom-actions{gap:8px}.workspace-footer{font-size:10px}}
@media(max-width:580px){.brand strong{font-size:16px}.brand small{font-size:7px;letter-spacing:.1em}.masthead-tools .button{font-size:11px;gap:5px;padding:10px 6px}.brand-mark{width:37px;height:43px;font-size:29px}.workspace{padding:0 18px 115px}.pathway-ribbon{justify-content:space-between;gap:7px;font-size:10px}.ribbon-label{display:none}.pathway-ribbon span[data-stage]{display:flex;gap:4px;align-items:center}.pathway-ribbon b{font-size:11px}.eyebrow{font-size:10px;margin-bottom:15px}h1{font-size:32px}.intro{font-size:16px;margin-bottom:22px}.lead-grid{grid-template-columns:1fr;gap:14px;margin-bottom:20px}.welcome-title{font-size:40px;margin:10px 0 12px}.welcome-copy p{font-size:16px;line-height:1.6}.photo-panel{height:170px}.welcome-image{min-height:170px;height:170px;object-position:center 55%}.photo-panel figcaption{font-size:9px;bottom:13px}.programme-name{font-size:10px}.welcome-copy .tagline{margin-bottom:8px}.mindset{grid-template-columns:1fr;margin:20px 0}.mindset-intro{padding:22px}.mindset-intro h2{font-size:25px;margin:9px 0}.mindset-intro p{font-size:14px}.mindset-example{padding:22px}.good-example{font-size:17px}.welcome-benefits{grid-template-columns:1fr;gap:17px}.benefit p{font-size:13px}.benefit strong{font-size:14px}.scope-box{padding:15px 18px}.scope-box p{font-size:14px}.check-label{font-size:15px;line-height:1.5;padding:10px 0}.bottom-nav{padding:12px 14px max(12px,env(safe-area-inset-bottom))}.bottom-nav .button{font-size:12px;gap:8px;padding:12px 13px}.bottom-actions{gap:3px}.bottom-actions .button-quiet{padding:12px 7px;font-weight:500}.bottom-nav #back-button{padding:12px 10px}.field-grid,.selection-grid,.stage-grid,.theme-grid,.scenario-canvas,.export-grid,.claim-examples{grid-template-columns:1fr}.field-grid{gap:19px}.card{padding:20px;border-radius:11px}.stage-card{padding:21px 22px}.stage-card .icon{margin-bottom:16px}.stage-card p{margin:10px 0;font-size:15px}.stage-card h3{font-size:23px}.stage-card small{font-size:12px}.theme-heading{min-height:115px;padding:20px 18px}.theme-body{padding:0 18px 20px}.theme-rule{align-items:flex-start;font-size:13px}.theme-rule strong{white-space:nowrap}.canvas-tabs{gap:2px}.canvas-tab{font-size:10px}.box-title h2{font-size:20px}.plain-prompt{font-size:16px}.canvas-layout{gap:18px}.live-preview .mini-canvas{grid-template-columns:repeat(3,1fr)}.mini-box{font-size:11px}.mini-box strong{font-size:11px}.budget-table{display:block}.budget-table thead{display:none}.budget-table tbody{display:block}.budget-table tr{display:grid;grid-template-columns:1fr 1fr 44px;border-bottom:1px solid var(--border);padding:10px 0;gap:8px}.budget-table td{padding:0;border:0}.budget-table td:first-child{grid-column:1/-1}.budget-table td::before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);margin-bottom:5px}.budget-table td:last-child{padding-top:23px}.budget-table .icon-button{height:48px;width:40px}.scenario-heading{display:block}.scenario-heading h2{font-size:27px;margin:14px 0}.scenario-amount{font-size:23px;margin-bottom:16px}.quote{font-size:20px;padding-left:17px}.quote.bad{font-size:18px}.tabs{gap:7px}.tab-button{font-size:13px;padding:10px 14px}.reframe-switch button{padding:10px 14px;font-size:13px}.section-head{gap:10px;flex-wrap:wrap}.export-card{padding:25px}.export-card .icon{margin-bottom:22px}.export-card h2{font-size:25px}.export-status{align-items:flex-start;padding:18px;gap:12px}.workspace-footer{display:block;font-size:10px;margin-top:25px}.workspace-footer span{display:block;margin-bottom:5px}.guide-dialog{padding:20px}.dialog-head h2{font-size:22px}.objectives{grid-template-columns:1fr}.agenda td{font-size:13px}.button-row .button{flex:1}.toast{bottom:96px;font-size:13px}.preview-budget strong{font-size:23px}.field-label{font-size:14px}.small-note{font-size:13px}}
.sentence-starters{margin:15px 0 20px;border-top:1px solid var(--border);padding-top:20px}.sentence-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.sentence-chip{min-height:48px;max-width:100%;background:var(--tint);border:1px solid #c9d9ca;border-radius:8px;padding:11px 14px;color:var(--green-deep);font-size:14px;text-align:left;line-height:1.45}.sentence-chip:hover{background:#dce8d9;border-color:var(--green)}.activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.activity-card{min-height:85px;display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--border);border-radius:9px;padding:17px 14px;font-size:14px;color:var(--green);text-align:left;font-weight:600}.activity-card:hover{border-color:var(--green);background:var(--gold-tint)}.wording-panel{border-color:#bed0be}.wording-panel summary{color:var(--green)}.wording-panel textarea{margin-top:8px}.wording-panel .field{margin-top:18px}.claim-panel{border-color:#d9bc79}.claim-panel summary{background:var(--gold-tint);border-radius:9px}.budget-table .icon-button{width:48px;min-width:48px}.canvas-tab{min-height:72px}.mini-label,.sidebar-title,.ribbon-label,.nav-group,.text-label,.brand small,.photo-panel figcaption{font-size:max(10px,.625rem)}
.budget-purpose{margin-top:7px;font-size:14px!important;background:var(--warm)!important}.check-label{min-height:48px}.reframe-switch button{min-height:48px}.budget-table th:nth-child(4){width:50px}.practice-call-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.practice-call{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:22px;background:#fff;border:1px solid var(--border);border-radius:10px;color:var(--navy);text-align:left;min-height:48px}.practice-call.chosen{border:2px solid var(--green);background:var(--tint)}.practice-call strong{font-size:19px;line-height:1.35;color:var(--green)}.practice-call small{font-size:14px;line-height:1.5;color:var(--muted)}.practice-call .mini-label{font-size:9px;letter-spacing:.04em}.grant-calls{margin-bottom:25px}.practice-label{background:var(--gold-tint);padding:13px 16px;color:#654a14;font-size:12px;font-weight:650;letter-spacing:.05em}.application-workspace{margin-bottom:26px}.application-workspace h2{font-size:25px}.activity-row{border-top:1px solid var(--border);padding-top:18px;margin:18px 0}.activity-row .mini-label{display:block;margin-bottom:12px}.review-item{display:flex;gap:15px;padding:18px 0;border-bottom:1px solid var(--border)}.review-item strong{font-size:15px}.review-item p{font-size:14px;margin:6px 0 0;color:var(--muted)}.review-item .button{min-height:48px;padding-left:0;margin-top:4px}.review-symbol{color:var(--alert);font-size:20px}.review-item.pass .review-symbol{color:var(--green)}.concept-field{margin-top:25px}.concept-field textarea{min-height:160px}
@media(max-width:580px){.practice-call-grid{grid-template-columns:1fr}.application-workspace{padding:18px}.application-workspace .detail-body{padding:16px}.budget-purpose{font-size:16px!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Funding, evidence and reviewer exercises */
.alignment-section{margin:24px 0 30px}.directory-grid,.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:20px 0}.directory-card,.review-sample{padding:24px;background:#faf8f5;border:1px solid #deded3;border-radius:12px}.directory-card h3{margin-top:14px}.directory-card a{color:#185a37;text-underline-offset:4px}.needs-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.needs-results article{border-left:3px solid #e0a838;padding:4px 18px}.worked-alongside{margin-top:24px;padding-top:24px;border-top:2px solid #e0a838}.worked-alongside p{font-size:15px;line-height:1.6}.score-field{margin:18px 0}.score-field input{max-width:120px}.score-total{display:block;font-size:28px;color:#185a37;padding:15px 0}.budget-table output{display:block;font-weight:700;margin:12px 0}.budget-table label{display:block}.budget-table input{max-width:100%}.field-section .field+.field{margin-top:12px}
@media(max-width:700px){.directory-grid,.review-grid,.needs-results{grid-template-columns:1fr}.directory-card,.review-sample{padding:18px}.alignment-section{padding:20px}}
.module-export{margin-top:36px;border-top:3px solid #e0a838}.module-export h2{margin-top:12px}
.score-field input[type=range]{max-width:100%;width:100%;accent-color:#185a37;min-height:40px;padding:0}

/* ---- Supporting Our Roots · R.O.O.T.S. digital workbook v3 ---- */
:root{--sky:#E7F0EB;--sky-edge:#A9CDB9;--sky-side:#3F7F63;--branch-side:#1F5A3F;--trunk-side:#173B2C;--roots:#F4EEE4;--roots-edge:#DCCBAF;--roots-side:#6D4C2C;--number:#B8892A}
.sor-brand{gap:16px;min-width:0}.sor-logos{display:flex;align-items:center;gap:12px;flex:none}.logo-eccb{height:34px;width:auto}.logo-bigpush{height:54px;width:auto}
.sor-name{min-width:0}.sor-name strong{display:block;font-size:20px;color:var(--green-deep);letter-spacing:-.02em;line-height:1.15}.brand .sor-name small{font-size:12px;letter-spacing:0;font-weight:500;color:var(--muted);margin-top:3px}
.sor-partners span{display:block;font-size:11px;line-height:1.4;margin-top:4px}.sor-partners>strong:first-child{font-size:12px}
.start-framing{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:-4px 0 20px;font-size:13px;color:var(--muted)}.start-framing img{height:30px;width:auto}.start-framing .only-small{display:none}
.listen{margin:-6px 0 18px;display:inline-flex;gap:8px;align-items:center;padding-left:0}.listen .icon,.detail-body .button .icon{width:18px;height:18px}
.five-questions{padding-left:24px;font-size:17px;font-weight:600;display:grid;gap:6px;margin:0 0 14px}
.leave-with{list-style:none;padding:0;margin:0;display:grid;gap:10px}.leave-with li{display:flex;gap:10px;align-items:flex-start}.leave-with .icon{width:22px;height:22px;color:var(--green);flex:none}
.step-list{padding-left:24px;display:grid;gap:4px;margin:0 0 12px}
.choice{border:0;padding:0;margin:0;min-width:0}.choice legend{margin-bottom:8px;padding:0}.choice-row{display:flex;flex-wrap:wrap;gap:10px}.choice-option{position:relative;display:inline-flex}.choice-option input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.choice-option span{display:inline-flex;align-items:center;min-height:48px;padding:10px 22px;border:1px solid var(--border);border-radius:999px;background:#fff;font-weight:600}.choice-option input:checked+span{background:var(--green);border-color:var(--green);color:#fff}.choice-option input:focus-visible+span{outline:3px solid var(--gold);outline-offset:3px}
.need-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:14px 0 18px}.need-card{border:1px solid var(--border);border-radius:12px;padding:8px 14px 10px;background:#fff}.need-card.on{border-color:var(--green);background:var(--tint)}.need-card p{margin:0 0 2px;color:var(--green-deep);font-weight:600}.need-card .button-quiet{padding-left:0}.need-card .field{margin-top:6px}
.box-editor{margin-bottom:24px}.box-editor .field{margin-top:10px}.box-editor.band-roots .box-number{background:var(--roots-side)}.box-editor.band-sky .box-number{background:var(--sky-side)}.box-editor.band-branches .box-number{background:var(--branch-side)}.box-editor.band-trunk .box-number{background:var(--trunk-side)}
.pitch-card .pattern{font-style:italic;background:var(--gold-tint);border-radius:10px;padding:12px 14px}.pitch-parts{margin:14px 0}
.canvas-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:26px;align-items:start;margin-bottom:22px}.board-aside{position:sticky;top:112px}.board-aside .board-cell{min-height:64px;font-size:12px}.board-aside .button-row{margin-top:12px}
.trap-list{list-style:none;padding:0;display:grid;gap:8px;margin:0}.trap-list li:before{content:'✗  ';color:var(--alert);font-weight:700}
.answer-pattern ol{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0 0 12px;counter-reset:a}.answer-pattern li{counter-increment:a;background:var(--tint);border-radius:999px;padding:8px 16px;font-weight:600}.answer-pattern li:before{content:counter(a) '. ';color:var(--green)}
.homework ul,.tip-list ul{padding-left:20px;margin:8px 0}.tip-list{margin:0 0 10px}.shortlist-call{font-weight:600;margin:6px 0 0}.theme-count{font-size:14px}#budget-usd{display:block;color:var(--muted);font-weight:500;font-size:13px}.need-list{padding-left:20px;margin:0}
/* The one-page canvas on screen: sky, branches, trunk, roots, then the pitch. */
.board{border:1px solid var(--border);border-radius:14px;background:#fff;padding:14px;display:grid;gap:10px;margin:8px 0 14px}
.board-id{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0}.board-id div{border-bottom:1px solid var(--border);padding-bottom:6px;min-width:0}.board-id dt{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--green)}.board-id dd{margin:2px 0 0;font-size:13px;overflow-wrap:anywhere}.board-blank{color:var(--muted)}
.board-band{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px}
.band-label{border-radius:10px;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;writing-mode:vertical-rl;transform:rotate(180deg);text-align:center;padding:10px 4px;gap:2px}.band-label strong{font-size:12px;letter-spacing:.08em;text-transform:uppercase}.band-label span{font-size:10px;opacity:.9}
.band-sky .band-label{background:var(--sky-side)}.band-branches .band-label{background:var(--branch-side)}.band-trunk .band-label{background:var(--trunk-side)}.band-roots .band-label{background:var(--roots-side)}
.band-cells{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.band-sky .band-cells{grid-template-columns:minmax(0,2.4fr) minmax(0,1fr)}.band-trunk .band-cells{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,1fr)}
.board-cell{display:block;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:#fff;color:inherit;text-decoration:none;min-height:96px;font-size:13px;line-height:1.45;overflow-wrap:anywhere}a.board-cell:hover{border-color:var(--green);box-shadow:0 0 0 2px var(--tint)}
.band-sky .board-cell{background:var(--sky);border-color:var(--sky-edge)}.band-roots .board-cell{background:var(--roots);border-color:var(--roots-edge)}.board-cell.board-solution{border:2px solid var(--trunk-side)}.board-cell.empty{border-style:dashed}
.board-cell h3{font-size:14px;margin:0 0 6px;letter-spacing:-.01em}.board-cell h3 span{color:var(--number);margin-right:2px}.board-cell p{margin:0 0 6px}.board-prompt{color:var(--muted);font-style:italic;font-size:12px}
.board-needs{list-style:none;padding:0;margin:0 0 6px;display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;font-size:12px;color:var(--muted)}.board-needs li.on{color:var(--navy);font-weight:600}
.board-money{width:100%;border-collapse:collapse;font-size:12px}.board-money td{padding:2px 0;border-bottom:1px solid #eee}.board-money td:last-child{text-align:right;white-space:nowrap;padding-left:8px}.board-money tfoot td{font-weight:700;border-bottom:0;padding-top:4px}
.board-call dl{margin:6px 0 0;font-size:12px}.board-call dl div{display:flex;gap:6px}.board-call dt{font-weight:700;flex:none}.board-call dd{margin:0;overflow-wrap:anywhere}
.board-pitch{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;align-items:center;background:var(--gold-tint);border-radius:10px;padding:10px 14px}.board-pitch strong{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--green-deep)}.board-pitch p{margin:0;font-size:14px;font-style:italic}.board-small{font-size:11px;color:var(--muted)}
@media(max-width:1150px){.canvas-step{grid-template-columns:1fr}.board-aside{position:static}}
@media(max-width:850px){.logo-eccb{height:26px}.logo-bigpush{height:42px}.sor-logos{gap:8px}.brand .sor-name small{display:none}.sor-name strong{font-size:16px}}
@media(max-width:580px){.logo-eccb{width:30px;height:30px;object-fit:cover;object-position:left center}.logo-bigpush{height:36px}.sor-brand{gap:8px}.sor-logos{gap:6px}.sor-name strong{font-size:14px;max-width:112px}.start-framing .only-small{display:block}.five-questions{font-size:16px}.choice-option span{padding:10px 18px}}
.box-editor[class*=band-] .box-number{color:#fff}.budget-total{flex-wrap:wrap}#budget-usd{flex-basis:100%;text-align:right}

/* Page-by-page steps */
.eyebrow .page-dots{margin-left:auto;display:inline-flex;align-items:center;gap:5px}.page-dots span{width:8px;height:8px;border-radius:50%;background:var(--border)}.page-dots span.done{background:var(--green)}.page-dots span.on{background:var(--gold);width:20px;border-radius:4px}.page-dots small{margin-left:6px;font-size:11px;letter-spacing:.04em;color:var(--muted);font-weight:600}
.theme-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;margin-bottom:10px}.theme-chip{display:flex;gap:12px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:#fff;cursor:pointer}.theme-chip.selected{border-color:var(--green);background:var(--tint)}.theme-chip .icon{width:26px;height:26px;color:var(--green);flex:none}.theme-chip span{flex:1;min-width:0}.theme-chip strong{display:block;line-height:1.3}.theme-chip small{display:block;color:var(--muted);font-size:13px;line-height:1.35;margin-top:2px}.theme-chip input{flex:none}.theme-chip:has(input:disabled){opacity:.55;cursor:not-allowed}
.theme-proof h2{display:flex;gap:10px;align-items:center;font-size:1.2rem}.theme-proof h2 .icon{width:24px;height:24px;color:var(--green)}.theme-proof .theme-advice{margin-top:10px}
/* The canvas lays itself out by its own width, so a scaled picture keeps the full layout. */
.board{container-type:inline-size}
@container (max-width:720px){.board-id{grid-template-columns:repeat(2,minmax(0,1fr))}.band-cells,.band-sky .band-cells,.band-trunk .band-cells{grid-template-columns:1fr}.board-pitch{grid-template-columns:1fr}
 /* On a narrow screen each band's name becomes a heading across the top, not squeezed sideways text. */
 .board-band{grid-template-columns:minmax(0,1fr)}.band-label{writing-mode:horizontal-tb;transform:none;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:4px 10px;padding:8px 12px;text-align:left}}
.board-picture{position:relative;overflow:hidden;border-radius:12px;margin:10px 0 4px}.board-picture .board{width:1040px;max-width:none;transform-origin:0 0;margin:0}
.guide-dialog .board{margin-top:0}
/* Look closer opens the canvas out: wide enough for the full layout, with each band's name as a heading across the top. */
.guide-dialog.canvas-dialog{width:min(1120px,96vw)}
.canvas-dialog .board-band{grid-template-columns:minmax(0,1fr)}
.canvas-dialog .band-label{writing-mode:horizontal-tb;transform:none;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:4px 10px;padding:8px 12px;text-align:left}
.canvas-dialog .band-label strong{font-size:13px}.canvas-dialog .band-label span{font-size:12px}
/* Other crops, and calls used in the canvas */
.add-other{display:flex;gap:8px;margin-top:10px;align-items:center}.add-other input{flex:1;min-width:0}
.call-card .use-call{margin-top:4px}
.todo-list{display:grid;gap:8px}.todo-item{display:flex;align-items:center;gap:10px;text-align:left;border:1px dashed var(--border);border-radius:10px;padding:10px 12px;background:#fff;color:var(--navy);font-weight:600}.todo-item .box-number{flex:none;background:var(--green);color:#fff}
/* Phones: each page should fit on about one screen. */
@media(max-width:580px){
 main{padding-top:14px}.eyebrow{margin-bottom:8px;flex-wrap:wrap;row-gap:6px}#main h1{font-size:26px;line-height:1.15;margin-bottom:8px}#main .intro{font-size:15px;line-height:1.5;margin-bottom:8px}
 .listen{margin:0 0 8px;padding:4px 0;min-height:0;font-size:14px}.card{padding:16px}.card,.card+.card{margin-top:12px}textarea{min-height:104px}.field-grid{gap:12px}
 .sentence-chips{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:6px;-webkit-overflow-scrolling:touch;margin-top:8px}.sentence-chip{flex:none;scroll-snap-align:start;white-space:nowrap;min-height:40px;padding:8px 12px}
 .practice-call small{display:none}.need-grid{grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 12px}.need-card{padding:4px 10px 6px}.need-card p{font-size:13px}.need-card .button-quiet{font-size:13px;padding:4px 0}
 .theme-pick{gap:8px}.theme-chip{padding:10px 12px}.theme-chip small{font-size:12px}.score-field .field-hint{display:none}.export-card{padding:16px}.activity-grid{margin-bottom:8px}.activity-card{padding:10px}
 .mindset{margin:12px 0}.board-picture{margin:6px 0 2px}
}
@media(max-width:580px){.theme-chip small{display:none}.pitch-parts{grid-template-columns:1fr 1fr}.export-card .icon{display:none}.todo-item{padding:8px 10px;font-size:14px}
 .budget-table td[data-label="Cost"]{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:end}.budget-table td[data-label="Cost"] output{grid-column:1/-1}.budget-table td[data-label="Cost"] label:last-of-type{grid-column:1/-1}
 .score-field{display:grid;grid-template-columns:1fr 72px;gap:4px 10px;align-items:center}.score-field .field-label{grid-column:1/-1;margin-bottom:0}.score-field input[type=number]{min-height:42px;padding:8px}}
.sample-text p{font-size:17px;line-height:1.6;margin:0}
@media(max-width:580px){.pitch-card .pattern{font-size:14px;padding:10px 12px;margin-bottom:8px}}
/* Messages never block the buttons beneath them. */
.toast{pointer-events:none}

/* Funding calls open now */
.call-group{font-size:15px;margin:22px 0 10px;color:var(--green-deep)}
.call-card{margin:0 0 6px;padding:0}
.call-card>summary{display:grid;gap:2px;padding:9px 12px;cursor:pointer;min-height:0}
.call-meta{font-size:12.5px;font-weight:600;color:var(--green);display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.call-meta .pill{padding:1px 6px}
.pill.call-open{background:#dff0e5;color:#185a37}
.pill.call-closed{background:#efece6;color:#6a665e}
.call-name{font-size:14px;line-height:1.3}
.call-only{font-size:12px;color:var(--muted);line-height:1.35}
.call-shut{opacity:.72}
.call-card .detail-body p{margin:0 0 8px}

/* Worked examples beside the boxes, the SMART guide and the outcomes matrix */
.example-box{background:var(--gold-tint);border-left:4px solid #E0A838;border-radius:8px;padding:10px 12px;margin:0 0 12px}
.example-box .mini-label{display:block;margin-bottom:4px}
.example-box .example-lead{font-size:13px;color:var(--muted);margin:0 0 4px;line-height:1.45}
.example-box p{margin:0;font-size:14px;line-height:1.5}
.example-box p:last-child{font-style:italic}
.smart-list{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:6px;font-size:14px}
.smart-list strong{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:6px;background:var(--green);color:#fff;margin-right:8px;font-size:13px}
.outcome-row{border:1px solid var(--border);border-radius:10px;padding:10px 12px 12px;margin:0 0 12px;min-width:0}
.outcome-row legend{font-weight:700;font-size:13px;padding:0 6px;color:var(--green-deep)}
/* 3.0.3: every gap with a button to its page, the bar that leads back, and the self-review */
.fix-list{display:grid;gap:12px;margin-top:14px}
.fix-group{border:1px solid var(--border);border-radius:10px;padding:14px 16px;background:var(--surface)}
.fix-group strong{display:block;margin:4px 0 6px;color:var(--green-deep)}
.fix-group ul{margin:0 0 12px;padding-left:20px;font-size:14px}
.fix-group li{margin:3px 0}
.fix-chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 8px}
.fix-chip{min-height:44px;max-width:100%;background:var(--surface);border:1px solid var(--gold);border-radius:8px;padding:8px 12px;color:var(--navy);font-size:14px;text-align:left;line-height:1.35;cursor:pointer}
.fix-chip span{color:#735319;font-weight:600;white-space:nowrap}
.fix-chip:hover,.fix-chip:focus-visible{background:var(--gold-tint)}
.return-bar{position:sticky;top:94px;z-index:15;display:flex;align-items:center;flex-wrap:wrap;gap:10px;background:var(--gold-tint);border:1px solid var(--gold);border-radius:10px;padding:10px 12px 10px 16px;margin:0 0 18px;font-size:14px}
.return-bar span{flex:1 1 160px}
.return-bar .icon-button{margin-left:auto}
.self-review h2{margin:0}
.self-review-list{margin:10px 0 16px;padding-left:20px}
.self-review-list li{margin:4px 0}
.skip-note{margin-top:8px}
.doc-where{color:#626B68;font-size:.92em}
@media(max-width:850px){.return-bar{top:80px}}
/* Box 7 on a phone: the cost boxes take the full width, with the remove button beside them. */
@media(max-width:580px){.budget-table td[data-label="Cost"]{grid-column:1/3}.budget-table td[data-label="Cost"]::before{grid-column:1/-1;margin-bottom:0}.budget-table td:last-child{grid-column:3}}
.chip-row-label{margin:14px 0 6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
/* 3.0.4: the facilitator's review page */
.review-main{max-width:1120px;margin:0 auto;padding:28px 16px 90px;display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.review-main>*,.review-main .card{min-width:0}
.review-main h1{margin:6px 0 8px}
.review-open{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0 6px}
.review-drop .review-main{outline:3px dashed var(--gold);outline-offset:-6px}
.review-table{display:grid;gap:8px;margin-bottom:12px}
.review-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.4fr) auto;gap:14px;align-items:center;width:100%;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;color:var(--navy);cursor:pointer;font:inherit}
.review-row:hover,.review-row:focus-visible{border-color:var(--green)}
.review-row.open{border-color:var(--green);box-shadow:0 0 0 2px var(--tint)}
.review-name strong{display:block}
.review-name small,.review-state small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.review-call{font-size:14px}
.review-state{text-align:right}
.review-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 18px;margin:14px 0}
.review-facts dt{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}
.review-facts dd{margin:2px 0 0}
.review-text{white-space:pre-wrap;line-height:1.6}
.review-footer{max-width:1120px;margin:0 auto 24px;padding:0 16px}
@media(max-width:640px){.review-row{grid-template-columns:1fr;gap:6px}.review-state{text-align:left}}
/* 3.0.7: the Caribbean palette of the uplifted Grant Canvas (approved sample 10). Colour sits in a few
   places: labels, top bars, numbers, buttons and the pitch bar. Where white or coloured text sits on
   a light or coloured ground, a slightly deeper shade of the same colour keeps it readable outdoors. */
:root{
 --c-sky:#1C86D1;--c-sky-deep:#1570B0;--c-sky-tint:#E6F2FC;--c-sky-line:#C7E1F6;
 --c-emerald:#12A37E;--c-emerald-deep:#0B7F62;
 --c-gold:#E3AC1C;--c-gold-tint:#FFFBEE;
 --c-hibiscus:#E2515E;--c-hibiscus-deep:#C63D4A;--c-sunset:#EE7A58;
 --c-ink:#0F2A3A;--c-paper:#FBF9F4;--c-hairline:#E6E2D8;
 --navy:var(--c-ink);--green:var(--c-sky-deep);--green-deep:var(--c-ink);--gold:var(--c-gold);--warm:var(--c-paper);--border:var(--c-hairline);--muted:#6B7479;--tint:var(--c-sky-tint);--gold-tint:var(--c-gold-tint);--alert:#A8323F;
 --sky:var(--c-sky-tint);--sky-edge:var(--c-sky-line);--sky-side:#1873B8;--branch-side:var(--c-emerald-deep);--trunk-side:var(--c-gold);--roots:#fff;--roots-edge:var(--c-hairline);--roots-side:var(--c-hibiscus-deep);--number:var(--c-gold);
 --font-head:'Fraunces',Georgia,'Times New Roman',serif;
 --font-body:'Source Sans 3','Source Sans Pro',Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
 font-family:var(--font-body);color:var(--c-ink);background:var(--c-paper)
}
body{background:var(--c-paper)}
h1,h2,.sor-name strong,.review-intro h1{font-family:var(--font-head);letter-spacing:-.015em}
.card{border-color:var(--c-hairline);border-top:4px solid var(--c-sky)}
.card.self-review{border-top-color:var(--c-emerald)}
.button-primary{background:var(--c-hibiscus-deep);border-color:var(--c-hibiscus-deep);color:#fff}
.button-primary:hover:not(:disabled){background:#A93341;border-color:#A93341}
.button-outline{color:var(--c-sky-deep);border-color:var(--c-sky)}
.button-outline:hover{background:var(--c-sky-tint);border-color:var(--c-sky-deep)}
.button-gold{background:var(--c-gold);color:var(--c-ink)}
.button-gold:hover{background:#F2C443}
a{color:var(--c-sky-deep)}
.good-note{color:var(--c-emerald-deep)}
.pill{background:var(--c-sky-tint);color:var(--c-sky-deep)}
.pill.call-open{background:#DDF3EC;color:var(--c-emerald-deep)}
.step-button.active{background:var(--c-sky-deep)}
.export-card.primary{background:var(--c-ink);border-color:var(--c-ink)}
/* The canvas on screen: one colour per row, white boxes with a coloured bar, serif numbers */
.band-trunk .band-label{color:var(--c-ink)}
.box-editor.band-trunk .box-number{color:var(--c-ink)}
.board-cell{background:#fff;border-color:var(--c-hairline)}
.band-sky .board-cell{background:var(--c-sky-tint);border-color:var(--c-sky-line);border-top:4px solid var(--c-sky)}
.band-branches .board-cell{border-top:4px solid var(--c-emerald)}
.band-trunk .board-cell{border-top:4px solid var(--c-gold)}
.band-roots .board-cell{background:#fff;border-top:4px solid var(--c-hibiscus)}
.board-cell h3 span{font-family:var(--font-head);font-size:1.4em;font-weight:700;margin-right:4px}
.band-sky .board-cell h3 span{color:var(--c-sky)}
.band-branches .board-cell h3 span{color:var(--c-emerald)}
.band-trunk .board-cell h3 span{color:var(--c-gold)}
.band-roots .board-cell h3 span{color:var(--c-hibiscus)}
.board-cell.board-solution{background:var(--c-gold-tint);border:1.5px solid var(--c-gold);border-top:4px solid var(--c-gold)}
.board-pitch{background:#fff;border:1.5px solid var(--c-hibiscus);padding:0;overflow:hidden;gap:0}
.board-pitch strong{background:linear-gradient(90deg,#C94350,#D8603E);color:#fff;align-self:stretch;display:flex;align-items:center;padding:10px 14px}
.board-pitch p{padding:10px 14px;font-family:var(--font-head);font-weight:600;color:var(--c-ink)}
/* The three worked examples on the start page */
.example-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0 10px}
.example-tab{text-align:left;background:#fff;border:1px solid var(--c-hairline);border-top:4px solid var(--c-hairline);border-radius:10px;padding:10px 12px;color:var(--c-ink);cursor:pointer;font:inherit;min-height:48px}
.example-tab strong{display:block;font-family:var(--font-head);font-size:15px}
.example-tab small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.example-tab:hover,.example-tab:focus-visible{border-color:var(--c-sky)}
.example-tab.on{border-top-color:var(--c-hibiscus);background:var(--c-gold-tint)}
@media(max-width:580px){.example-tabs{gap:6px}.example-tab{padding:7px 8px;border-radius:8px}.example-tab strong{font-size:13px;line-height:1.2}.example-tab small{font-size:11px}.ex-topic{display:none}}
