@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Source+Serif+4:opsz,wght@8..60,600;8..60,700&display=swap";:root{--forest-950: #072d29;--forest-900: #0b4038;--forest-800: #115448;--forest-700: #176756;--gold-500: #d89d32;--gold-400: #e4b355;--cream: #fcfaf5;--sand: #f1ede4;--ink: #132b29;--muted: #596c68;--line: #e7e2d8;--white: #fff;--shadow: 0 18px 45px rgba(10, 46, 41, .08);font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--cream)}a{color:inherit;text-decoration:none}button{border:0;color:inherit;cursor:pointer;font:inherit}.container{width:min(1190px,calc(100% - 48px));margin:0 auto}.utility-bar{background:var(--forest-950);color:#d7e2df;font-size:13px}.utility-inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:20px}.utility-inner p{margin:0;color:#e6edeb;font-weight:500}.utility-links{display:flex;gap:28px}.utility-links a{display:inline-flex;align-items:center;gap:7px}.utility-links a:hover,.admin-launch:hover{color:var(--white)}.admin-launch{display:inline-flex;align-items:center;gap:7px;background:transparent;color:#d7e2df;font-size:13px}.header{position:sticky;top:0;z-index:20;background:#fffffff7;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-inner{min-height:86px;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:13px}.brand img{width:58px;height:58px}.official-brand img{width:auto;height:74px;object-fit:contain}.brand span{display:flex;flex-direction:column;gap:3px;line-height:1}.brand strong{color:var(--forest-900);font-size:17px;letter-spacing:.04em}.brand small{color:var(--gold-500);font-size:11px;font-weight:800;letter-spacing:.16em}.nav{display:flex;align-items:center;justify-content:center;gap:clamp(16px,2.2vw,30px);flex:1;color:#354844;font-size:14px;font-weight:600}.nav a{position:relative;padding:35px 0}.nav a.active,.nav a:hover{color:var(--forest-800)}.nav a.active:after,.nav a:hover:after{content:"";position:absolute;left:0;right:0;bottom:22px;height:2px;background:var(--gold-500)}.search-button,.menu-button{width:42px;height:42px;display:inline-grid;place-items:center;background:transparent;color:var(--forest-800)}.menu-button,.mobile-nav{display:none}.hero{position:relative;min-height:637px;display:flex;flex-direction:column;justify-content:space-between;color:var(--white);background-image:linear-gradient(90deg,#06241ff0,#06241fc7 31%,#06241f40 68%,#06241f29),linear-gradient(0deg,#07282361,#07282314),var(--hero-image);background-position:center;background-size:cover}.hero-content{padding-top:82px;padding-bottom:72px}.eyebrow{margin:0 0 17px;color:var(--gold-400);font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.eyebrow.green{color:var(--forest-700)}h1,h2{margin:0;font-family:"Source Serif 4",Georgia,serif;font-weight:700;letter-spacing:-.045em}h1{max-width:630px;font-size:clamp(52px,6vw,70px);line-height:1.08}.preserve-lines{white-space:pre-line}.hero-copy{max-width:500px;margin:22px 0 34px;color:#ffffffe6;font-size:17px;line-height:1.7}.hero-actions{display:flex;gap:15px}.button{min-height:50px;padding:0 25px;display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:5px;font-size:14px;font-weight:700;transition:transform .16s ease,background .16s ease}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--gold-500);color:#142f2b}.button.primary:hover{background:var(--gold-400)}.button.secondary{border:1px solid rgba(255,255,255,.66);color:var(--white)}.button.light{margin-left:auto;background:var(--white);color:var(--forest-900)}.stats{min-height:86px;display:flex;align-items:stretch;background:#072823b3}.stats div{flex:1;padding:17px 30px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid rgba(255,255,255,.14)}.stats strong{color:var(--gold-400);font-family:"Source Serif 4",Georgia,serif;font-size:28px;line-height:1.1}.stats span{color:#ffffffbf;font-size:13px}.section{padding:67px 0}.section-heading h2{color:var(--ink);font-size:clamp(35px,4vw,43px);line-height:1.15}.section-heading .eyebrow{margin-bottom:12px}.section-heading.split{margin-bottom:32px;display:flex;align-items:end;justify-content:space-between;gap:20px}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--forest-800);font-size:14px;font-weight:700}.notice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.notice-card{min-height:188px;padding:25px 25px 20px;background:var(--white);border:1px solid var(--line);border-radius:7px;box-shadow:0 2px 5px #12262205}.notice-meta{display:flex;align-items:center;justify-content:space-between;color:#71827f;font-size:12px}.notice-meta span{padding:6px 14px;border-radius:16px;background:#edf4ef;color:var(--forest-700);font-weight:700}.notice-card h3{min-height:48px;margin:20px 0;color:#273b37;font-size:16px;line-height:1.48}.notice-card a{display:inline-flex;align-items:center;gap:9px;color:var(--forest-700);font-size:13px;font-weight:700}.services{padding-top:33px}.centered{margin-bottom:39px;text-align:center}.centered p:last-child{margin:13px 0 0;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-card{min-height:225px;padding:29px 25px;border:1px solid var(--line);border-radius:8px;background:var(--white);transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease}.service-card:hover{border-color:#13665633;box-shadow:var(--shadow);transform:translateY(-3px)}.service-card svg{color:var(--forest-700)}.service-card h3{margin:17px 0 10px;color:#172f2b;font-size:17px}.service-card p{min-height:57px;margin:0 0 15px;color:var(--muted);font-size:13px;line-height:1.58}.service-card span{display:inline-flex;align-items:center;gap:7px;color:var(--forest-700);font-size:13px;font-weight:700}.two-column{padding-top:12px}.feature-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px}.mayor-panel,.documents-panel{border-radius:12px;padding:39px}.mayor-panel{background:var(--forest-900);color:var(--white)}.mayor-panel.with-portrait{padding:0;display:grid;grid-template-columns:165px 1fr;overflow:hidden}.mayor-panel.with-portrait img{width:100%;height:100%;min-height:302px;object-fit:cover}.mayor-panel.with-portrait div{padding:34px 29px}.mayor-panel h2,.documents-panel h2{font-size:36px}.mayor-panel p:not(.eyebrow){margin:17px 0 30px;color:#ffffffcf;line-height:1.7}.documents-panel{background:var(--sand)}.panel-heading{margin-bottom:23px;display:flex;align-items:center;justify-content:space-between;color:var(--forest-800)}.document-link{margin-top:10px;padding:14px 17px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-radius:6px;background:var(--white);color:var(--forest-800)}.document-link span{display:flex;flex-direction:column;gap:3px;font-size:14px;font-weight:600}.document-link small{color:#7a8b87;font-size:11px;font-weight:700;text-transform:uppercase}.panel-more{margin-top:23px}.page-hero{padding:65px 0 67px;color:var(--white);background:linear-gradient(98deg,#072d29fa,#0b4038e0),url(/official/road-to-hlabisa.jpg) center / cover}.page-hero h1{max-width:none;margin-bottom:14px;font-size:clamp(43px,5vw,58px)}.page-hero p:last-child{max-width:680px;margin:0;color:#ffffffd1;font-size:16px;line-height:1.7}.subnav{margin-top:-26px;padding:8px;position:relative;z-index:2;display:flex;gap:5px;border:1px solid var(--line);border-radius:9px;background:var(--white);box-shadow:var(--shadow)}.subnav a{padding:14px 21px;border-radius:6px;color:var(--muted);font-size:14px;font-weight:700}.subnav a.active,.subnav a:hover{background:#ebf2ed;color:var(--forest-800)}.content-section{padding:58px 0 76px}.prose-grid{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(310px,.68fr);gap:36px;align-items:start}.prose h2,.side-card h2{margin:0 0 20px;color:var(--ink);font-size:clamp(27px,3vw,33px)}.prose p{margin:0 0 19px;color:#425751;font-size:15px;line-height:1.83}.narrow{max-width:840px}.side-card{padding:25px;border-radius:10px;background:var(--sand)}.side-card img{width:calc(100% + 50px);height:154px;margin:-25px -25px 25px;border-radius:10px 10px 0 0;object-fit:cover}.leader-row{padding:14px 0;display:flex;flex-direction:column;gap:5px;border-bottom:1px solid #dfd8ca}.leader-row span{color:var(--forest-700);font-size:12px;font-weight:800;text-transform:uppercase}.leader-row strong{font-size:15px}.values-grid{display:grid;grid-template-columns:1fr 1.25fr .85fr;gap:20px}.value-card{min-height:259px;padding:36px 31px;border:1px solid var(--line);border-radius:10px;background:var(--white)}.value-card.accent{background:var(--forest-900);color:var(--white)}.value-card h2{margin-bottom:18px;font-size:31px}.value-card p{margin:0;color:inherit;line-height:1.75}.value-card:not(.accent) p{color:var(--muted)}.value-card.values span{margin-top:10px;padding:9px 13px;display:block;border-radius:6px;background:#edf4ef;color:var(--forest-800);font-size:14px;font-weight:700}.profile-grid{display:grid;grid-template-columns:295px minmax(0,1fr);gap:42px;align-items:start}.portrait-card{overflow:hidden;border-radius:10px;background:var(--forest-900);color:var(--white)}.portrait-card img{width:100%;display:block}.portrait-card h2{margin:21px 20px 6px;font-family:Manrope,Arial,sans-serif;font-size:18px;letter-spacing:0}.portrait-card p{margin:0 20px 23px;color:#ffffffc2;font-size:13px}.page-actions{margin-bottom:31px;display:flex;gap:12px}.officials-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.official-card{min-height:134px;padding:22px 19px;border:1px solid var(--line);border-radius:8px;background:var(--white)}.official-card small{color:var(--forest-700);font-size:11px;font-weight:800;text-transform:uppercase}.official-card h2{margin:14px 0 7px;font-family:Manrope,Arial,sans-serif;font-size:16px;letter-spacing:0}.official-card p{margin:0;color:var(--muted);font-size:13px}.contact-card p,.contact-card a:not(.button){margin:0 0 17px;display:flex;gap:10px;color:#435a54;line-height:1.55}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:19px}.category-card{padding:28px 23px;border:1px solid var(--line);border-radius:9px;background:var(--white);transition:transform .18s ease,box-shadow .18s ease}.category-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.category-card svg,.highlight svg{color:var(--gold-500)}.category-card h2{margin:18px 0 12px;font-family:Manrope,Arial,sans-serif;font-size:18px;letter-spacing:0}.category-card p{color:var(--muted);font-size:13px}.category-card span{display:flex;align-items:center;gap:9px;color:var(--forest-800);font-size:13px;font-weight:700}.managed-files{margin-top:53px}.document-page{max-width:930px}.download-card{margin-bottom:13px;padding:19px 21px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--forest-800);transition:border-color .18s ease,box-shadow .18s ease}.download-card:hover{border-color:#bed3cb;box-shadow:0 9px 25px #0a2e290d}.download-card span{display:flex;flex-direction:column;gap:5px}.download-card small{color:var(--gold-500);font-size:11px;font-weight:800;text-transform:uppercase}.download-card strong{color:var(--ink);font-size:15px}.download-card em{color:#71827f;font-size:12px;font-style:normal}.archive-button{margin-top:25px}.empty-archive{margin:0 0 10px;padding:23px;border:1px dashed #c8d6d1;border-radius:8px;color:var(--muted);line-height:1.7}.tourism-image{height:310px;overflow:hidden}.tourism-image img{width:100%;height:100%;object-fit:cover}.side-card.highlight{background:var(--forest-900);color:var(--white)}.side-card.highlight h2{margin-top:16px;color:var(--white)}.side-card.highlight p{margin-bottom:29px;color:#ffffffc7;line-height:1.7}.contact-grid{display:grid;grid-template-columns:.85fr 1.05fr 1.25fr;gap:20px}.contact-tile{padding:31px;border:1px solid var(--line);border-radius:10px;background:var(--white)}.contact-tile>svg{color:var(--gold-500)}.contact-tile h2{margin:20px 0 19px;font-size:29px}.contact-tile a:not(.button){color:var(--forest-800);font-size:20px;font-weight:700}.contact-tile p{color:var(--muted);font-size:14px;line-height:1.7}.contact-tile.prominent{background:var(--sand)}.visit{margin-top:20px;padding:44px 0;background:var(--forest-800);color:var(--white)}.visit-inner{display:flex;align-items:center;gap:29px}.visit-inner svg{flex:none;color:var(--gold-400)}.visit .eyebrow{margin-bottom:7px}.visit h2{margin-bottom:7px;font-size:35px}.visit p:last-child{margin:0;color:#ffffffc7}.footer{background:var(--forest-950);color:#d6e1df}.footer-grid{padding:55px 0 43px;display:grid;grid-template-columns:1.55fr .8fr .9fr 1fr;gap:45px}.footer .brand strong{color:var(--white)}.footer-logo img{height:115px}.footer-brand p{max-width:285px;margin:21px 0 0;color:#adbdb9;font-size:13px;line-height:1.7}.footer h2{margin:8px 0 20px;color:var(--white);font-family:Manrope,Arial,sans-serif;font-size:15px;font-weight:700;letter-spacing:0}.footer-grid>div:not(.footer-brand) a{margin-bottom:14px;display:block;color:#b7c8c4;font-size:13px}.footer-grid>div:not(.footer-brand) a:hover{color:var(--white)}.footer-grid>div:last-child p{color:#b7c8c4;font-size:13px;line-height:1.7}.copyright{padding:20px 24px;border-top:1px solid rgba(255,255,255,.09);color:#9db1ad;font-size:12px;text-align:center}.admin-login-shell{min-height:100vh;padding:28px;background:var(--sand)}.back-link{display:inline-flex;align-items:center;gap:9px;background:transparent;color:var(--forest-800);font-weight:700}.admin-login-card{width:min(460px,100%);margin:clamp(50px,10vh,110px) auto 0;padding:46px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;background:var(--white);box-shadow:var(--shadow)}.admin-login-card>svg{margin-bottom:21px;color:var(--forest-700)}.admin-login-card .eyebrow{margin-bottom:9px}.admin-login-card h1,.admin-header h1{color:var(--ink);font-size:clamp(34px,4vw,43px)}.admin-login-card>p:not(.eyebrow):not(.admin-message){margin:14px 0 26px;color:var(--muted);line-height:1.65}.admin-login-card label,.field-grid label{display:flex;flex-direction:column;gap:8px;color:#384d48;font-size:13px;font-weight:700}.admin-login-card input,.field-grid input,.field-grid textarea,.editor-row input{width:100%;border:1px solid #d8dfdc;border-radius:6px;background:var(--white);color:var(--ink);font:inherit;font-size:14px}.admin-login-card input{min-height:48px;margin-bottom:24px;padding:0 13px}.admin-login-card input:focus,.field-grid input:focus,.field-grid textarea:focus,.editor-row input:focus{border-color:var(--forest-700);outline:2px solid rgba(23,103,86,.14)}.admin-login-card .button{width:100%}.admin-loading{color:var(--muted);font-weight:600;text-align:center}.admin-shell{min-height:100vh;padding:42px max(calc((100vw - 1190px)/2),27px) 62px;background:#f5f3ee}.admin-header{margin-bottom:31px;display:flex;align-items:end;justify-content:space-between;gap:22px}.admin-header .eyebrow{margin-bottom:8px}.admin-header-actions{display:flex;gap:11px}.button.outline,.button.compact{border:1px solid #d1dad6;background:var(--white);color:var(--forest-800)}.button.compact{min-height:43px;padding:0 17px}.admin-message{margin:0 0 22px;padding:14px 18px;border:1px solid #c7dfd6;border-radius:7px;background:#e8f2ed;color:var(--forest-800);font-size:14px}.admin-message.error{margin:20px 0 0;border-color:#e7b7af;background:#faeeee;color:#882e25}.admin-summary{margin-bottom:25px;display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.admin-summary div{padding:23px 25px;border:1px solid var(--line);border-radius:9px;display:flex;flex-direction:column;gap:5px;background:var(--white)}.admin-summary strong{color:var(--forest-800);font-family:"Source Serif 4",Georgia,serif;font-size:29px}.admin-summary span{color:var(--muted);font-size:13px}.admin-panel{margin-top:19px;padding:30px;border:1px solid var(--line);border-radius:10px;background:var(--white)}.admin-panel-heading{margin-bottom:25px;display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-panel-heading h2{margin-bottom:5px;font-family:Manrope,Arial,sans-serif;font-size:21px;letter-spacing:-.02em}.admin-panel-heading span{color:var(--muted);font-size:13px}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:19px}.field-grid .full{grid-column:1 / -1}.field-grid input{height:45px;padding:0 13px}.field-grid textarea{resize:vertical;padding:12px 13px}.editor-list{display:flex;flex-direction:column;gap:11px}.editor-row{padding:13px;display:grid;align-items:center;gap:9px;border:1px solid #ebeee9;border-radius:7px;background:#fafaf7}.editor-row input{height:42px;padding:0 11px}.notices-editor{grid-template-columns:.7fr .85fr 1.7fr .9fr 1.4fr 42px}.documents-editor{grid-template-columns:.8fr 1.5fr 1.7fr 128px 42px}.upload-button{height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #d1dad6;border-radius:6px;background:var(--white);color:var(--forest-800);cursor:pointer;font-size:13px;font-weight:700}.upload-button input{display:none}.delete-button{height:42px;display:inline-grid;place-items:center;border-radius:6px;background:#f9eae7;color:#963c30}@media(max-width:1050px){.nav{display:none}.header-inner{justify-content:space-between}.search-button{margin-left:auto}.menu-button{display:inline-grid}.mobile-nav{padding:0 24px 15px;display:block;background:var(--white)}.mobile-nav a{padding:13px max(calc((100vw - 1190px)/2),0px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-weight:600}.service-grid,.footer-grid,.officials-grid,.category-grid{grid-template-columns:repeat(2,1fr)}.values-grid,.contact-grid,.prose-grid{grid-template-columns:1fr}.admin-header{align-items:flex-start;flex-direction:column}.notices-editor,.documents-editor{grid-template-columns:repeat(2,1fr)}.editor-row .wide{grid-column:1 / -1}}@media(max-width:760px){.container{width:min(100% - 34px,1190px)}.utility-inner p,.utility-links a:not(:first-child){display:none}.utility-inner{justify-content:center}.header-inner{min-height:75px;gap:5px}.official-brand img{width:auto;height:59px}.brand strong{font-size:14px}.brand small{font-size:9px}.hero{min-height:660px;background-position:63% center}.hero-content{padding-top:61px}h1{font-size:clamp(41px,13vw,50px)}.hero-copy{font-size:15px}.hero-actions{flex-direction:column;align-items:flex-start}.stats{width:100%}.stats div{padding:13px 15px}.stats strong{font-size:23px}.section{padding:53px 0}.section-heading.split{align-items:flex-start;flex-direction:column}.notice-grid,.service-grid,.feature-grid{grid-template-columns:1fr}.service-card,.service-card p{min-height:auto}.mayor-panel,.documents-panel{padding:29px 23px}.mayor-panel.with-portrait{padding:0;grid-template-columns:1fr}.mayor-panel.with-portrait img{height:255px;min-height:auto;object-position:center 26%}.page-hero{padding:48px 0 55px}.subnav{overflow-x:auto;white-space:nowrap}.content-section{padding:43px 0 58px}.profile-grid,.officials-grid,.category-grid{grid-template-columns:1fr}.page-actions{align-items:flex-start;flex-direction:column}.tourism-image{height:220px}.visit-inner{align-items:flex-start;flex-direction:column}.button.light{margin-left:0}.footer-grid{grid-template-columns:1fr;gap:26px}.admin-login-shell,.admin-shell{padding:20px 17px 39px}.admin-login-card{margin-top:43px;padding:29px 22px}.admin-header-actions{width:100%;flex-wrap:wrap}.admin-header-actions .button.primary{flex-basis:100%;order:-1}.admin-summary,.field-grid,.notices-editor,.documents-editor{grid-template-columns:1fr}.field-grid .full,.editor-row .wide{grid-column:auto}.admin-panel{padding:23px 17px}.admin-panel-heading{align-items:flex-start;flex-direction:column}}
