@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Montserrat:wght@400;500;600;700;800&display=swap');
:root{--green:#073b2d;--green2:#0e503c;--accent:#24845d;--gold:#d7b674;--ink:#1b2e2a;--muted:#61716a;--cream:#f6f7f2;--line:#e1e8e0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.7 'DM Sans',Arial,sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Montserrat,Arial,sans-serif;line-height:1.22;letter-spacing:-.035em}h2{font-size:clamp(2rem,3.7vw,3.5rem);margin-bottom:24px}h3{font-size:1.25rem}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:3px}.container{width:min(1160px,calc(100% - 48px));margin:auto}.skip{position:absolute;left:12px;top:-100px;background:#fff;padding:10px;z-index:100}.skip:focus{top:10px}.site-header{position:sticky;top:0;z-index:30;background:#fff;box-shadow:0 2px 20px #0b322015}.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;flex-direction:column;line-height:1.2;color:var(--green);letter-spacing:.04em;white-space:nowrap;font:700 15px Montserrat,Arial,sans-serif}.brand b{font-weight:800}.brand small{font:600 9px 'DM Sans',Arial,sans-serif;letter-spacing:.23em;margin-top:7px}.nav{display:flex;align-items:center;gap:27px}.nav a{font-size:13px;font-weight:700}.nav-contact{border:1px solid var(--green);padding:11px 17px;border-radius:3px}.nav-contact:hover{background:var(--green);color:white}.menu-toggle{display:none}.hero{background:radial-gradient(circle at 75% 35%,#19543f 0%,transparent 38%),linear-gradient(120deg,#073b2d,#092f27);color:white;position:relative;overflow:hidden}.hero-orb{position:absolute;border:1px solid #ffffff12;border-radius:50%;pointer-events:none}.orb-one{width:750px;height:750px;right:-310px;top:-260px}.orb-two{width:480px;height:480px;right:-130px;top:-120px}.hero-grid{min-height:610px;display:grid;grid-template-columns:1.55fr 0.8fr;gap:65px;align-items:center;padding-top:65px;padding-bottom:65px;position:relative}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.19em;color:var(--accent);margin-bottom:24px}.eyebrow.light{color:var(--gold)}.eyebrow i{display:inline-block;width:3px;height:3px;background:currentColor;border-radius:50%;vertical-align:middle;margin:0 6px}.hero h1{font-size:clamp(2.55rem,4.35vw,4.8rem);letter-spacing:-.05em;line-height:1.16;margin:0 0 26px}.hero h1 em,.approach-section h2 em,.contact-section h2 em{font-style:normal;color:var(--gold)}.hero-lead{max-width:640px;color:#d5e5dd;font-size:17px}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin:32px 0}.btn{display:inline-flex;justify-content:center;align-items:center;gap:20px;border-radius:3px;padding:14px 20px;font-weight:800;font-size:13px;cursor:pointer;transition:transform .2s,background .2s;border:1px solid transparent}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#153c2e}.btn-gold:hover{background:#e6c98f;color:#153c2e}.btn-outline{border-color:#adc7b8;color:white}.btn-outline:hover{background:#fff;color:var(--green)}.hero-location{font-size:12px;color:#bbd1c6}.hero-location span{margin:0 8px}.hero-panel{background:#ffffff0b;border:1px solid #ffffff35;backdrop-filter:blur(8px);padding:31px}.panel-kicker{font-size:11px;font-weight:800;letter-spacing:.2em;color:var(--gold)}.panel-rule{height:2px;background:var(--gold);width:50px;margin:18px 0 12px}.focus-item{display:flex;align-items:center;gap:20px;border-bottom:1px solid #ffffff23;padding:17px 0}.focus-item span{font:600 12px Montserrat;color:var(--gold)}.focus-item strong{font-size:14px}.hero-panel p{font-style:italic;color:#b9d4c4;font-size:13px;margin:22px 0 0}.hero-bottom{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #ffffff24;padding:20px 0;font-size:10px;letter-spacing:.2em;color:#c5d8cd}.intro-band{background:#f0f3ed;border-bottom:1px solid var(--line)}.intro-band-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0}.intro-band p{margin:0;font-size:17px}.intro-band a,.text-link{font-weight:800;color:var(--green);font-size:13px;white-space:nowrap}.section{padding:110px 0}.two-col{display:grid;grid-template-columns:1fr 0.9fr;gap:90px;align-items:center}.accent{color:var(--accent)}.gold-line{width:70px;height:3px;background:var(--gold);margin-bottom:30px}.section-lead{font-size:18px;line-height:1.75}.about-section p:not(.eyebrow){color:#52635a}.about-section .text-link{display:inline-block;margin-top:15px}.credentials{background:var(--cream);border:1px solid var(--line);padding:34px}.credential-head{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--green);padding-bottom:20px}.small-diamond{color:var(--gold)}.credential{display:flex;gap:20px;padding:23px 0;border-top:1px solid #d9e1d7}.credential-number{font:700 12px Montserrat;color:var(--accent)}.credential strong{display:block;font-size:14px}.credential small{display:block;color:var(--muted);margin-top:6px}.credential-footer{background:var(--green);color:#fff;padding:18px;text-align:center;font-size:10px;letter-spacing:.07em}.credential-footer span{color:var(--gold);margin:0 5px}.services-section,.insights-section{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}.section-heading h2{margin-bottom:15px}.section-heading p:not(.eyebrow){color:var(--muted);max-width:650px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:#fff;border:1px solid var(--line);padding:32px;transition:box-shadow .2s,transform .2s}.service-card:hover{box-shadow:0 18px 35px #113e2515;transform:translateY(-3px)}.service-no{font-size:10px;letter-spacing:.15em;color:var(--accent);font-weight:800}.service-card h3{margin:20px 0 15px;min-height:54px}.service-card p{color:var(--muted);font-size:14px}.service-card ul{padding-left:17px;margin:22px 0 0;color:#3d5048;font-size:13px}.service-card li{padding-bottom:9px}.service-card li::marker{color:var(--accent)}.service-note,.portfolio-note{color:var(--muted);font-size:12px;margin:22px 0 0}.approach-section{background:var(--green);color:white}.approach-section h2{max-width:850px}.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:60px}.approach-grid>div{border-top:1px solid #ffffff4a;padding-top:23px}.approach-grid span{color:var(--gold);font-size:13px;font-weight:800}.approach-grid h3{margin:28px 0 12px}.approach-grid p{font-size:14px;color:#c3d7cd}.portfolio-grid,.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.portfolio-card{border:1px solid var(--line);background:#fff}.portfolio-visual{height:220px;padding:24px;overflow:hidden;position:relative}.visual-dashboard{background:#e5eee6}.visual-audit{background:#f1ece0}.visual-esg{background:#e2ebe6}.mock-label{font-size:10px;letter-spacing:.18em;color:var(--green);font-weight:800}.mock-bars{height:105px;display:flex;align-items:end;gap:12px;margin:15px 0}.mock-bars i{flex:1;background:#237754;height:45%}.mock-bars i:nth-child(2){height:78%}.mock-bars i:nth-child(3){height:61%}.mock-bars i:nth-child(4){height:92%}.mock-bars i:nth-child(5){height:70%}.mock-bars i:nth-child(6){height:100%;background:var(--gold)}.mock-mini{display:flex;gap:10px}.mock-mini b{height:12px;flex:1;background:#bfd2c5}.mock-table{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:24px}.mock-table b{height:28px;background:#d2d9cd;border-left:4px solid #468565}.mock-table b:nth-child(3),.mock-table b:nth-child(6){border-left-color:#c3a05c}.mock-circles{display:flex;gap:14px;margin:25px 0}.mock-circles b{height:68px;width:68px;border:10px solid #2a7c58;border-left-color:#b7d0bd;border-radius:50%}.mock-circles b:nth-child(2){border-color:#b5a16e;border-left-color:#d9d7bc}.mock-lines i{display:block;background:#b9d1c3;height:8px;margin-bottom:8px;width:85%}.mock-lines i:nth-child(2){width:62%}.mock-lines i:nth-child(3){width:74%}.portfolio-body{padding:25px}.portfolio-body span,.insight-grid span{font-size:10px;color:var(--accent);font-weight:800;letter-spacing:.15em}.portfolio-body h3{margin:10px 0}.portfolio-body p,.insight-grid p{font-size:14px;color:var(--muted);margin:0}.insight-grid article{background:white;padding:30px;border-top:3px solid var(--gold)}.insight-grid h3{margin:18px 0}.contact-section{background:#082f27;color:white}.contact-grid{display:grid;grid-template-columns:1fr 0.92fr;gap:100px}.contact-section h2{font-size:clamp(2.2rem,4vw,4rem)}.contact-section p{color:#c8d9d0}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-top:35px}.contact-links a{color:white;border-bottom:1px solid #ffffff45}.contact-links a:hover{color:var(--gold)}.contact-links span{color:#bbd2c6}.contact-card{background:white;color:var(--ink);padding:35px}.contact-card-title{font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--accent)}.contact-card p{color:var(--muted);font-size:14px;margin-top:14px}.contact-card form{display:flex;flex-direction:column}.contact-card label{font-size:12px;font-weight:800;margin:11px 0 6px}.contact-card label span{color:#9d4a35}.contact-card input,.contact-card select,.contact-card textarea{width:100%;border:1px solid #d7e1d9;border-radius:2px;background:#fafcf9;padding:11px 12px;color:var(--ink)}.contact-card textarea{resize:vertical}.submit-btn{margin-top:22px}.contact-card small{font-size:11px;color:var(--muted);margin-top:12px;line-height:1.5}.whatsapp-link{display:block;text-align:center;margin-top:22px;color:var(--green);font-size:13px;font-weight:800}.footer{background:#05241d;color:#d8e5dc}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 0}.footer-inner>div{display:flex;flex-direction:column}.footer strong{font:700 12px Montserrat;letter-spacing:.06em}.footer small{font-size:9px;letter-spacing:.15em}.footer p,.footer a{font-size:11px;margin:0}.footer a:hover{color:var(--gold)}

/* Client testimonials — reserved for authentic, permissioned feedback */
.testimonials-section{background:#f3f6f0}
.testimonials-heading{margin-bottom:24px}
.testimonial-notice{border-left:3px solid var(--gold);background:#fff;padding:15px 18px;font-size:13px;line-height:1.6;color:#516258;margin-bottom:28px}
.testimonial-notice strong{color:var(--green)}
.testimonials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.testimonial-card{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid #dce6dd;padding:30px 27px 25px;box-shadow:0 12px 30px #143b2720}
.testimonial-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:15px}
.testimonial-category{font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--accent);line-height:1.5}
.testimonial-mark{font-family:Georgia,serif;font-size:60px;line-height:.75;color:#d6b579}
.testimonial-placeholder{flex:1;min-height:143px;margin:27px 0;color:#3c5147;font-size:15px;line-height:1.75;font-style:italic}
.testimonial-attribution{display:flex;gap:13px;align-items:center;border-top:1px solid var(--line);padding-top:21px}
.testimonial-avatar{flex:0 0 39px;width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:#eaf1e9;color:var(--green);font-size:11px;font-weight:800}
.testimonial-attribution strong{display:block;font-size:13px;color:var(--ink)}
.testimonial-attribution small{display:block;font-size:11px;line-height:1.5;color:var(--muted);margin-top:2px}
.testimonial-footnote{margin:20px 0 0;font-size:12px;color:var(--muted)}
@media(max-width:1000px){.testimonials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonials-grid .testimonial-card:last-child{grid-column:1/-1}}
@media(max-width:760px){.testimonials-grid{grid-template-columns:1fr}.testimonials-grid .testimonial-card:last-child{grid-column:auto}.testimonial-placeholder{min-height:0}.testimonial-card{padding:25px}.testimonials-heading{margin-bottom:24px}}

@media(max-width:1000px){.nav{gap:14px}.nav a{font-size:12px}.hero-grid{gap:30px}.two-col{gap:45px}.service-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{gap:40px}}
@media(max-width:760px){.container{width:min(100% - 36px,560px)}.nav-wrap{height:72px}.brand{font-size:12px}.brand small{font-size:8px}.menu-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:0;padding:12px;cursor:pointer}.menu-toggle span{width:24px;height:2px;background:var(--green)}.nav{display:none;position:absolute;left:0;right:0;top:72px;background:white;flex-direction:column;align-items:stretch;padding:18px 24px 25px;box-shadow:0 15px 20px #092d201c;gap:0}.nav.open{display:flex}.nav a{padding:12px 0;font-size:14px}.nav-contact{margin-top:8px;text-align:center}.hero-grid{grid-template-columns:1fr;min-height:auto;padding:70px 0 48px}.hero h1{font-size:clamp(2.4rem,8vw,3.7rem)}.hero-panel{max-width:540px}.hero-bottom{flex-wrap:wrap;justify-content:center;column-gap:18px;font-size:9px}.intro-band-inner{align-items:start;flex-direction:column}.section{padding:75px 0}.two-col,.contact-grid{grid-template-columns:1fr;gap:40px}.section-heading{display:block}.section-heading .text-link{display:inline-block;margin-top:22px}.approach-grid{grid-template-columns:repeat(2,1fr);gap:22px}.portfolio-grid,.insight-grid{grid-template-columns:1fr}.portfolio-visual{height:210px}.footer-inner{flex-wrap:wrap}.contact-card{padding:25px}}
@media(max-width:480px){.hero h1{font-size:2.35rem}.eyebrow{font-size:9px;letter-spacing:.12em}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.service-grid,.approach-grid{grid-template-columns:1fr}.service-card h3{min-height:auto}.credentials{padding:24px}.contact-card{padding:20px}.hero-bottom{font-size:8px}.footer-inner{flex-direction:column;align-items:start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

@media(min-width:761px) and (max-width:1120px){.nav{gap:12px}.nav a{font-size:11px}.brand{font-size:12px}.nav-wrap{gap:10px}}

/* Cross-sector experience, Zimbabwe OSH Act alignment and reliable enquiry workflow */
.experience-ribbon{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;background:#eff4eb;border-left:4px solid var(--gold);padding:17px 20px;margin:24px 0 18px}
.experience-ribbon strong{color:var(--green);font-family:Montserrat,Arial,sans-serif;font-size:15px}
.experience-ribbon span{color:#4e6559;font-size:12px;font-weight:700}
.experience-ribbon b{color:#bb9655;padding:0 5px}
.osh-law-panel{display:grid;grid-template-columns:1fr 1fr;gap:28px;background:var(--green);color:#fff;padding:32px 36px;margin-top:30px;border-top:4px solid var(--gold)}
.osh-law-head h3{font-size:clamp(1.25rem,2vw,1.7rem);margin:14px 0}
.osh-law-head p{color:#d4e5db;font-size:14px;margin:0}
.law-kicker{letter-spacing:.16em;font-size:10px;font-weight:800;color:var(--gold)}
.osh-law-details{border-left:1px solid #ffffff45;padding-left:30px;font-size:13px;color:#d4e5db}
.osh-law-details strong{color:#fff}
.osh-law-details ul{padding-left:19px;margin:10px 0}
.osh-law-details li{padding:3px 0}
.osh-law-details li::marker{color:var(--gold)}
.osh-law-details a{color:var(--gold);font-weight:800;display:inline-block;margin-top:7px;border-bottom:1px solid #d7b67480}
.enquiry-result{margin-top:20px;background:#f4f7f2;border:1px solid #c6d9ca;border-left:4px solid var(--gold);padding:20px}
.enquiry-result[hidden]{display:none!important}
.enquiry-result h3{font-size:19px;margin:0 0 6px;color:var(--green)}
.enquiry-result p{color:#465a4f;margin:5px 0 12px}
.enquiry-actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.enquiry-actions .btn{font-size:11px;padding:10px 12px;flex:1 1 auto;gap:8px}
.btn-secondary{color:var(--green);background:#fff;border:1px solid #abc8b5}
.btn-secondary:hover{background:#e7efe8;color:var(--green)}
.enquiry-result label{display:block;margin:18px 0 6px;font-weight:800;font-size:12px}
.enquiry-result textarea{display:block;width:100%;background:#fff;border:1px solid #cbdccd;color:var(--ink);font-size:12px;line-height:1.5;padding:10px;resize:vertical}
.enquiry-result .copy-status{font-size:12px;margin:8px 0 0;color:#1d633c;min-height:1em}
@media(max-width:760px){.osh-law-panel{grid-template-columns:1fr;padding:25px;gap:18px}.osh-law-details{padding:20px 0 0;border-left:0;border-top:1px solid #ffffff45}.experience-ribbon{display:block}.experience-ribbon span{display:block;margin-top:7px}.enquiry-actions{flex-direction:column}.enquiry-actions .btn{width:100%}}
