@font-face{font-family:ForumSans;src:url('../fonts/sans.ttf')}@font-face{font-family:ForumSans;src:url('../fonts/sans-semibold.ttf');font-weight:600}@font-face{font-family:ForumSerif;src:url('../fonts/serif-bold.ttf');font-weight:700}
:root{--ink:#303d43;--slate:#506879;--sage:#e7ece5;--ivory:#f7f5f0;--gold:#b68c43;--line:#d4d6cf;--muted:#667277;--white:#fff;--good:#326546;--amber:#8d6019}*{box-sizing:border-box}body{margin:0;background:var(--ivory);color:var(--ink);font:16px/1.5 ForumSans,Arial,sans-serif}h1,h2,h3,h4{font-family:ForumSerif,Georgia,serif;font-weight:700;line-height:1.08;letter-spacing:-.025em;margin:0 0 14px}h1{font-size:clamp(36px,4.1vw,60px)}h2{font-size:34px}h3{font-size:25px}h4{font-size:21px}p{margin:0 0 16px}a{color:var(--slate);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}.wrap{width:min(1440px,92%);margin:auto}.skip{position:absolute;left:10px;top:-90px;background:#fff;padding:15px;z-index:100}.skip:focus{top:5px}.utility{display:flex;justify-content:flex-end;gap:22px;font-size:13px;height:34px;align-items:center}.masthead{background:white;border-bottom:1px solid var(--line)}.headrow{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:14px 0 20px}.logo{width:310px;max-width:30vw;height:auto;display:block}.nav{display:flex;align-items:center;gap:26px;font-size:14px;font-weight:600}.nav a{color:var(--ink);padding:10px 0;white-space:nowrap}.nav a.active{border-bottom:3px solid var(--gold)}.btn,button.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--slate);color:white;padding:12px 22px;border:1px solid var(--slate);border-radius:4px;font-size:14px;line-height:1.3;font-weight:600;text-decoration:none;min-height:44px}.btn:hover{background:#405865;text-decoration:none}.btn.outline{background:transparent;color:var(--ink);border-color:#a7aca6}.btn.small{padding:8px 14px;min-height:36px;font-size:13px}.textlink{display:inline-flex;align-items:center;gap:9px;font-weight:600;text-decoration:underline;text-underline-offset:4px;font-size:14px}.actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.icon{width:23px;height:23px;vertical-align:middle;flex-shrink:0}.icon.large{width:38px;height:38px;color:var(--gold)}.menu-toggle{display:none;background:white;border:1px solid var(--line);border-radius:4px;padding:8px}.hero{display:grid;grid-template-columns:1fr 1.04fr;min-height:460px;background:#faf9f5}.hero-copy{padding:42px max(30px,calc((100vw - 1440px)/2)) 42px max(4vw,calc((100vw - 1440px)/2));align-self:center}.hero h1{max-width:650px}.hero p{font-size:18px;max-width:600px}.hero-photo{width:100%;height:100%;min-height:440px;object-fit:cover}.goldrule{width:50px;height:3px;background:var(--gold);margin:20px 0}.band{background:var(--sage)}.section{padding:38px 0}.section.compact{padding:25px 0}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.two-col{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:26px}.three-col{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:28px}.flex{display:flex;gap:14px;align-items:center}.between{display:flex;justify-content:space-between;align-items:center;gap:20px}.stack{display:grid;gap:22px;align-content:start}.card{background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:5px;padding:23px}.card.sage{background:var(--sage);border-color:transparent}.card h3{margin-top:5px}.card p{font-size:14px}.card .icon.large{margin-bottom:12px}.pillar{display:flex;align-items:flex-start;gap:18px;padding:3px 0}.pillar h3{font-size:25px}.pillar p{font-size:14px;margin:0}.feature-photo{width:100%;height:320px;object-fit:cover;border-radius:4px}.tag,.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:5px;background:var(--sage);font-size:12px;line-height:1.4}.badge.amber{background:#f5e9ce;color:#795719}.badge.good{background:#e1eddf;color:#315f3c}.badge.blue{background:#e3eaf0;color:#3a5b70}.badge.gray{background:#eaebe8;color:#59615d}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:600;color:var(--amber);margin-bottom:14px}.pagehead{padding:32px 0;background:linear-gradient(100deg,var(--ivory),var(--sage))}.pagehead p{font-size:18px;margin:0;max-width:1000px}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:16px}.checks{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:12px;font-size:14px}.checks li{position:relative;padding-left:22px}.checks li:before{content:'✓';position:absolute;left:0;color:var(--gold)}.note{background:#f5f0e5;border:1px solid #e2d7bf;border-radius:4px;padding:13px 16px;font-size:13px}.muted,.small{color:var(--muted);font-size:13px}.process{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.process span{padding:12px 18px;border:1px solid var(--line);border-radius:4px;font-size:13px;background:white}.footer{background:#394e59;color:white;padding:22px 0;margin-top:30px}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer img{width:240px;max-width:100%;height:auto;object-fit:contain;display:block}.footer-inner>a{display:block;flex:0 0 240px;max-width:100%}.footer a{color:white;font-size:13px}.demo-bar{text-align:center;font-size:11px;color:#6b7475;padding:9px;background:#eeeee8}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;background:var(--sage);font-weight:600;white-space:nowrap}th,td{padding:12px 11px;border-bottom:1px solid var(--line);vertical-align:middle}td p{margin:3px 0 0;font-size:12px;color:var(--muted)}.tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:22px;border-bottom:1px solid var(--line)}.tabs a,.tabs button{background:transparent;border:0;border-bottom:3px solid transparent;padding:12px 18px;font-size:14px;color:var(--ink)}.tabs .active{border-color:var(--slate);font-weight:600}.filterbar{display:flex;gap:12px;margin:20px 0}.filterbar input{flex:1;min-width:160px}.filterbar select{width:180px}input,select,textarea{border:1px solid #bcc3bc;border-radius:4px;padding:11px 12px;background:#fff;max-width:100%;font-size:14px}textarea{min-height:110px;resize:vertical}label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select{width:100%}input[type=checkbox],input[type=radio]{accent-color:var(--slate)}.field{margin-bottom:17px}.field small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.full{grid-column:1/-1}.checkbox{display:flex;gap:10px;align-items:flex-start;font-size:13px;font-weight:400;margin:10px 0}.checkbox input{margin-top:4px}.segmented{display:flex;gap:0;margin-bottom:22px}.segmented button{flex:1;background:white;border:1px solid #acb4ac;padding:13px 10px}.segmented button.selected{background:var(--slate);color:white}.wizard{display:grid;grid-template-columns:220px minmax(0,1fr) 265px;gap:22px;padding:28px 0}.steps{background:var(--sage);border-radius:5px;padding:22px 13px;align-self:start;position:sticky;top:20px}.steps button{display:flex;width:100%;gap:12px;align-items:center;border:0;background:none;text-align:left;padding:16px 10px;border-radius:4px;font-size:13px}.steps button.active{background:var(--slate);color:white}.stepnum{border:1px solid currentColor;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;flex-shrink:0}.wizard-panel{background:white;border:1px solid var(--line);border-radius:5px;padding:27px;align-self:start}.wizard-controls{display:flex;justify-content:space-between;margin-top:25px;padding-top:20px;border-top:1px solid var(--line);gap:12px}.hidden,[hidden]{display:none!important}.workspace-header{background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:35px;padding:14px 25px;min-height:95px}.workspace-header .logo{width:290px;max-width:30vw}.workspace-tools{display:flex;gap:18px;align-items:center}.workspace-tools input{width:350px!important}.avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--sage);font-weight:600}.workspace{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 95px)}.sidebar{background:var(--sage);padding:22px 12px;display:flex;flex-direction:column;gap:5px}.sidebar a{color:var(--ink);display:flex;gap:13px;align-items:center;font-size:14px;padding:13px 14px;border-radius:5px}.sidebar a.active{background:#ced9cc;font-weight:600}.sidebar a:hover{background:#dce3d9;text-decoration:none}.side-label{font-size:10px;letter-spacing:.12em;margin:0 14px 14px}.side-bottom{margin-top:auto;padding-top:40px}.workspace-main{padding:30px 30px 15px;min-width:0}.workspace-main h1{font-size:42px}.workspace-main h2{font-size:29px}.workspace-main .card{padding:22px}.workspace-main>section{margin:22px 0}.workspace-main .subtitle{font-size:16px;color:var(--muted)}.rows{list-style:none;margin:0;padding:0}.rows li{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.rows li:last-child{border:0}.progress{height:10px;background:#e0e1dd;border-radius:10px;margin:14px 0;overflow:hidden}.progress span{display:block;height:100%;background:#8c9f76;border-radius:10px}.timeline{display:flex;gap:22px;justify-content:space-between;font-size:12px}.timeline div{flex:1}.calendar-date{background:#f5ecd7;color:#775a2c;border-radius:4px;min-width:55px;text-align:center;padding:8px;font-size:11px}.calendar-date b{display:block;font-size:26px;line-height:1}.photo-card{overflow:hidden;padding:0}.photo-card img{width:100%;height:220px;object-fit:cover;display:block}.photo-card .body{padding:23px}.metric{font:700 35px ForumSerif;margin:10px 0}.auth{max-width:560px;margin:50px auto}.empty{padding:45px 20px;text-align:center;border:1px dashed #bdc6ba;background:#f0f3eb}.toast{position:fixed;bottom:20px;right:20px;max-width:420px;background:#354f42;color:white;padding:16px 23px;border-radius:5px;box-shadow:0 8px 25px #0002;z-index:100}.modal{position:fixed;inset:0;background:#28363a88;display:grid;place-items:center;padding:25px;z-index:90}.modal-box{background:var(--ivory);max-width:640px;width:100%;max-height:90vh;overflow:auto;padding:30px;border-radius:7px}.modal-close{float:right;background:none;border:0;font-size:23px}.readiness-row{display:flex;gap:25px;align-items:center;justify-content:space-between}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{font-weight:600;cursor:pointer}.faq details p{padding-top:14px;font-size:14px}.print-only{display:none}.floating-label{margin:0 0 6px;font-size:12px}.source-list{display:grid;gap:15px}.source-list a{text-decoration:underline}.pill-row{display:flex;flex-wrap:wrap;gap:8px}.download-item{padding:18px 0;border-bottom:1px solid var(--line)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.lang-note{padding:10px;background:#edf0e9;font-size:12px}.header-search{max-width:190px;padding:5px 10px;min-width:100px}
@media(min-width:1600px){.workspace-main{max-width:1600px}.hero-copy{padding-right:45px}}@media(max-width:1150px){.nav{gap:15px;font-size:12px}.logo{width:250px}.nav .btn{padding:10px 12px}.wizard{grid-template-columns:180px 1fr}.wizard-aside{grid-column:1/-1}.three-col{grid-template-columns:1fr 1fr}.three-col>:last-child{grid-column:1/-1}.workspace{grid-template-columns:185px 1fr}.workspace-main{padding:25px 20px}.workspace-main h1{font-size:36px}.sidebar a{font-size:12px;padding:12px 9px}.workspace-tools input{width:250px!important}}
@media(max-width:850px){.menu-toggle{display:block}.headrow{flex-wrap:wrap;padding:14px 0}.logo{max-width:65vw;width:285px}.nav{display:none;flex-basis:100%;flex-wrap:wrap}.nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:35px 5%}.hero-photo{height:340px;min-height:0}.grid4,.grid3{grid-template-columns:1fr 1fr}.grid2,.two-col,.three-col{grid-template-columns:1fr}.three-col>:last-child{grid-column:auto}.workspace{display:block}.sidebar{display:none}.sidebar.open{display:flex}.workspace-header{padding:12px 16px;gap:12px;flex-wrap:wrap}.workspace-header .logo{width:230px;max-width:60vw}.workspace-tools input{display:none}.workspace-main{padding:24px 5%}.workspace-main h1{font-size:34px}.workspace-header .menu-toggle{margin-left:auto}.wizard{grid-template-columns:1fr}.steps{position:static;display:flex;overflow:auto;padding:8px}.steps button{min-width:150px;font-size:11px;padding:10px}.steps h4{display:none}.wizard-panel{padding:20px}.filterbar{flex-wrap:wrap}.filterbar select{flex:1;min-width:130px}.footer-inner{flex-wrap:wrap}.timeline{flex-wrap:wrap}.timeline div{min-width:110px}.readiness-row{display:block}}
@media(max-width:520px){h1{font-size:38px}h2{font-size:29px}.grid3,.grid4,.formgrid,.gallery{grid-template-columns:1fr}.hero p{font-size:16px}.section{padding:28px 0}.between{align-items:flex-start;flex-direction:column}.workspace-main .card{padding:18px}.workspace-header .logo{width:205px}.workspace-tools{gap:7px}.btn{padding:11px 16px}.footer img{width:210px}.utility{gap:12px}.wizard-controls{flex-wrap:wrap}.segmented button{font-size:12px}.pagehead p{font-size:16px}.hero-photo{height:280px}}
@media print{.masthead,.sidebar,.workspace-header,.footer,.demo-bar,.actions,.wizard-controls,.menu-toggle{display:none!important}.workspace{display:block}.workspace-main{padding:0}.card{break-inside:avoid}.print-only{display:block}body{background:white}.wrap{width:100%}}
.nav a.btn{color:#fff}.icon.large{filter:invert(58%) sepia(35%) saturate(594%) hue-rotate(358deg) brightness(91%) contrast(87%)}
body[data-page="policy"] .pagehead{background:linear-gradient(90deg,#f7f5f0 5%,#f7f5f0e8 50%,#f7f5f060 100%),url('../images/highveld-policy-banner-1440.webp') center 54%/cover}.workspace-header{padding-top:10px;padding-bottom:10px}.workspace-header .logo{width:260px}

/* v2.0.2: clear institutional identity and scan-friendly answer sections */
.hero .hero-forum-title{font-family:ForumSans,Arial,sans-serif;font-weight:600;font-size:clamp(17px,1.65vw,23px);line-height:1.35;letter-spacing:0;color:#42586a;max-width:650px;margin:0 0 12px}
.hero .hero-message{font-size:clamp(34px,3.8vw,55px);line-height:1.08;max-width:650px;margin:0 0 12px}
.section-introduction p{max-width:750px}
.answer-steps{padding-left:22px;margin:12px 0 18px}
.answer-steps li{margin:10px 0}
@media(max-width:850px){.hero .hero-message{font-size:clamp(34px,7vw,45px)}}
